Struct iceberg::expr::BinaryExpression
source · pub struct BinaryExpression<T> { /* private fields */ }
Expand description
Binary predicate, for example, a > 10
.
Trait Implementations§
source§impl<T: Bind> Bind for BinaryExpression<T>
impl<T: Bind> Bind for BinaryExpression<T>
source§impl<T: Clone> Clone for BinaryExpression<T>
impl<T: Clone> Clone for BinaryExpression<T>
source§fn clone(&self) -> BinaryExpression<T>
fn clone(&self) -> BinaryExpression<T>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<T: Debug> Debug for BinaryExpression<T>
impl<T: Debug> Debug for BinaryExpression<T>
source§impl<'de, T> Deserialize<'de> for BinaryExpression<T>where
+
impl<'de, T> Deserialize<'de> for BinaryExpression<T>where
+
Trait Implementations§
source§impl<T: Bind> Bind for BinaryExpression<T>
impl<T: Bind> Bind for BinaryExpression<T>
source§impl<T: Clone> Clone for BinaryExpression<T>
impl<T: Clone> Clone for BinaryExpression<T>
source§fn clone(&self) -> BinaryExpression<T>
fn clone(&self) -> BinaryExpression<T>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<T: Debug> Debug for BinaryExpression<T>
impl<T: Debug> Debug for BinaryExpression<T>
source§impl<'de, T> Deserialize<'de> for BinaryExpression<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for BinaryExpression<T>where
T: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
source§impl<T: Display> Display for BinaryExpression<T>
impl<T: Display> Display for BinaryExpression<T>
source§impl<T: PartialEq> PartialEq for BinaryExpression<T>
impl<T: PartialEq> PartialEq for BinaryExpression<T>
source§impl<T: Display> Display for BinaryExpression<T>
impl<T: Display> Display for BinaryExpression<T>
source§impl<T: PartialEq> PartialEq for BinaryExpression<T>
impl<T: PartialEq> PartialEq for BinaryExpression<T>
source§fn eq(&self, other: &BinaryExpression<T>) -> bool
fn eq(&self, other: &BinaryExpression<T>) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl<T> Serialize for BinaryExpression<T>where
T: Serialize,
impl<T> Serialize for BinaryExpression<T>where
T: Serialize,
source§fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
diff --git a/api/iceberg/expr/struct.UnaryExpression.html b/api/iceberg/expr/struct.UnaryExpression.html
index 4b7677a78..22115eb35 100644
--- a/api/iceberg/expr/struct.UnaryExpression.html
+++ b/api/iceberg/expr/struct.UnaryExpression.html
@@ -1,7 +1,7 @@
UnaryExpression in iceberg::expr - Rust Struct iceberg::expr::UnaryExpression
source · pub struct UnaryExpression<T> { /* private fields */ }
Expand description
Unary predicate, for example, a IS NULL
.
-Trait Implementations§
source§impl<T: Bind> Bind for UnaryExpression<T>
source§impl<T: Clone> Clone for UnaryExpression<T>
source§fn clone(&self) -> UnaryExpression<T>
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl<T: Debug> Debug for UnaryExpression<T>
source§impl<'de, T> Deserialize<'de> for UnaryExpression<T>where
+
Trait Implementations§
source§impl<T: Bind> Bind for UnaryExpression<T>
source§impl<T: Clone> Clone for UnaryExpression<T>
source§fn clone(&self) -> UnaryExpression<T>
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl<T: Debug> Debug for UnaryExpression<T>
source§impl<'de, T> Deserialize<'de> for UnaryExpression<T>where
T: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl<T: Display> Display for UnaryExpression<T>
source§impl<T: PartialEq> PartialEq for UnaryExpression<T>
source§impl<T: Display> Display for UnaryExpression<T>
source§impl<T: PartialEq> PartialEq for UnaryExpression<T>
source§fn eq(&self, other: &UnaryExpression<T>) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl<T> Serialize for UnaryExpression<T>where
T: Serialize,
source§fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
diff --git a/api/iceberg/spec/enum.DataFileBuilderError.html b/api/iceberg/spec/enum.DataFileBuilderError.html
index 42203fecc..c3561789a 100644
--- a/api/iceberg/spec/enum.DataFileBuilderError.html
+++ b/api/iceberg/spec/enum.DataFileBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for DataFileBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for DataFileBuilderError
Auto Trait Implementations§
§impl Freeze for DataFileBuilderError
§impl RefUnwindSafe for DataFileBuilderError
§impl Send for DataFileBuilderError
§impl Sync for DataFileBuilderError
§impl Unpin for DataFileBuilderError
§impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for DataFileBuilderError
Auto Trait Implementations§
§impl Freeze for DataFileBuilderError
§impl RefUnwindSafe for DataFileBuilderError
§impl Send for DataFileBuilderError
§impl Sync for DataFileBuilderError
§impl Unpin for DataFileBuilderError
§impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.DataFileFormat.html b/api/iceberg/spec/enum.DataFileFormat.html
index b810f86fc..f99732f5f 100644
--- a/api/iceberg/spec/enum.DataFileFormat.html
+++ b/api/iceberg/spec/enum.DataFileFormat.html
@@ -6,7 +6,7 @@
Variants§
§Avro
Avro file format: https://avro.apache.org/
§Orc
Orc file format: https://orc.apache.org/
§Parquet
Parquet file format: https://parquet.apache.org/
-Trait Implementations§
source§impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for DataFileFormat
source§impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for DataFileFormat
source§impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl Copy for DataFileFormat
source§impl Eq for DataFileFormat
source§impl StructuralPartialEq for DataFileFormat
Auto Trait Implementations§
§impl Freeze for DataFileFormat
§impl RefUnwindSafe for DataFileFormat
§impl Send for DataFileFormat
§impl Sync for DataFileFormat
§impl Unpin for DataFileFormat
§impl UnwindSafe for DataFileFormat
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.FormatVersion.html b/api/iceberg/spec/enum.FormatVersion.html
index 79063608c..f0af08ab1 100644
--- a/api/iceberg/spec/enum.FormatVersion.html
+++ b/api/iceberg/spec/enum.FormatVersion.html
@@ -4,8 +4,8 @@
}Expand description
Iceberg format version
Variants§
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
+
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
source§impl Ord for FormatVersion
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more1.21.0 · source§fn min(self, other: Self) -> Selfwhere
diff --git a/api/iceberg/spec/enum.Literal.html b/api/iceberg/spec/enum.Literal.html
index 3c0c838ec..b203d5162 100644
--- a/api/iceberg/spec/enum.Literal.html
+++ b/api/iceberg/spec/enum.Literal.html
@@ -171,9 +171,9 @@
let t2 = Literal::decimal_from_str("123.45").unwrap();
assert_eq!(t1, t2);
-
source§impl Literal
sourcepub fn try_from_json(value: JsonValue, data_type: &Type) -> Result<Option<Self>>
Create iceberg value from a json value
See this spec for reference.
-sourcepub fn try_into_json(self, type: &Type) -> Result<JsonValue>
Converting iceberg value to json value.
+Trait Implementations§
source§impl Hash for Literal
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
diff --git a/api/iceberg/spec/enum.ManifestContentType.html b/api/iceberg/spec/enum.ManifestContentType.html
index 506d6a398..78fde0003 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
source§impl Eq for ManifestContentType
source§impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
§impl Freeze for ManifestContentType
§impl RefUnwindSafe for ManifestContentType
§impl Send for ManifestContentType
§impl Sync for ManifestContentType
§impl Unpin for ManifestContentType
§impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg_catalog_sql/enum.SqlBindStyle.html b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
index 6b4f3a9fb..38bebbb91 100644
--- a/api/iceberg_catalog_sql/enum.SqlBindStyle.html
+++ b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
@@ -1,12 +1,12 @@
-SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
Rename a table in the catalog.source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
Rename a table in the catalog.Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
index ef5dc1874..1898f41d2 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
@@ -1,8 +1,16 @@
-SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
+
+SqlBindStyle::DollarNumeric
: Binds SQL statements using $1
, $2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using ?
as a placeholder. This is for MySQL and SQLite databases.
+
+Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/error.rs.html b/api/src/iceberg_catalog_sql/error.rs.html
index cdfcd7d93..93814b9b3 100644
--- a/api/src/iceberg_catalog_sql/error.rs.html
+++ b/api/src/iceberg_catalog_sql/error.rs.html
@@ -25,6 +25,13 @@
25
26
27
+28
+29
+30
+31
+32
+33
+34
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}
\ No newline at end of file
diff --git a/api/trait.impl/core/convert/trait.From.js b/api/trait.impl/core/convert/trait.From.js
index fbfdc8b7f..8598bfcf2 100644
--- a/api/trait.impl/core/convert/trait.From.js
+++ b/api/trait.impl/core/convert/trait.From.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
+"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
diff --git a/api/iceberg/expr/struct.UnaryExpression.html b/api/iceberg/expr/struct.UnaryExpression.html
index 4b7677a78..22115eb35 100644
--- a/api/iceberg/expr/struct.UnaryExpression.html
+++ b/api/iceberg/expr/struct.UnaryExpression.html
@@ -1,7 +1,7 @@
UnaryExpression in iceberg::expr - Rust Struct iceberg::expr::UnaryExpression
source · pub struct UnaryExpression<T> { /* private fields */ }
Expand description
Unary predicate, for example, a IS NULL
.
-Trait Implementations§
source§impl<T: Bind> Bind for UnaryExpression<T>
source§impl<T: Clone> Clone for UnaryExpression<T>
source§fn clone(&self) -> UnaryExpression<T>
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl<T: Debug> Debug for UnaryExpression<T>
source§impl<'de, T> Deserialize<'de> for UnaryExpression<T>where
+
Trait Implementations§
source§impl<T: Bind> Bind for UnaryExpression<T>
source§impl<T: Clone> Clone for UnaryExpression<T>
source§fn clone(&self) -> UnaryExpression<T>
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl<T: Debug> Debug for UnaryExpression<T>
source§impl<'de, T> Deserialize<'de> for UnaryExpression<T>where
T: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl<T: Display> Display for UnaryExpression<T>
source§impl<T: PartialEq> PartialEq for UnaryExpression<T>
source§impl<T: Display> Display for UnaryExpression<T>
source§impl<T: PartialEq> PartialEq for UnaryExpression<T>
source§fn eq(&self, other: &UnaryExpression<T>) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl<T> Serialize for UnaryExpression<T>where
T: Serialize,
source§fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
diff --git a/api/iceberg/spec/enum.DataFileBuilderError.html b/api/iceberg/spec/enum.DataFileBuilderError.html
index 42203fecc..c3561789a 100644
--- a/api/iceberg/spec/enum.DataFileBuilderError.html
+++ b/api/iceberg/spec/enum.DataFileBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for DataFileBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for DataFileBuilderError
Auto Trait Implementations§
§impl Freeze for DataFileBuilderError
§impl RefUnwindSafe for DataFileBuilderError
§impl Send for DataFileBuilderError
§impl Sync for DataFileBuilderError
§impl Unpin for DataFileBuilderError
§impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for DataFileBuilderError
Auto Trait Implementations§
§impl Freeze for DataFileBuilderError
§impl RefUnwindSafe for DataFileBuilderError
§impl Send for DataFileBuilderError
§impl Sync for DataFileBuilderError
§impl Unpin for DataFileBuilderError
§impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.DataFileFormat.html b/api/iceberg/spec/enum.DataFileFormat.html
index b810f86fc..f99732f5f 100644
--- a/api/iceberg/spec/enum.DataFileFormat.html
+++ b/api/iceberg/spec/enum.DataFileFormat.html
@@ -6,7 +6,7 @@
Variants§
§Avro
Avro file format: https://avro.apache.org/
§Orc
Orc file format: https://orc.apache.org/
§Parquet
Parquet file format: https://parquet.apache.org/
-Trait Implementations§
source§impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for DataFileFormat
source§impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for DataFileFormat
source§impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl Copy for DataFileFormat
source§impl Eq for DataFileFormat
source§impl StructuralPartialEq for DataFileFormat
Auto Trait Implementations§
§impl Freeze for DataFileFormat
§impl RefUnwindSafe for DataFileFormat
§impl Send for DataFileFormat
§impl Sync for DataFileFormat
§impl Unpin for DataFileFormat
§impl UnwindSafe for DataFileFormat
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.FormatVersion.html b/api/iceberg/spec/enum.FormatVersion.html
index 79063608c..f0af08ab1 100644
--- a/api/iceberg/spec/enum.FormatVersion.html
+++ b/api/iceberg/spec/enum.FormatVersion.html
@@ -4,8 +4,8 @@
}Expand description
Iceberg format version
Variants§
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
+
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
source§impl Ord for FormatVersion
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more1.21.0 · source§fn min(self, other: Self) -> Selfwhere
diff --git a/api/iceberg/spec/enum.Literal.html b/api/iceberg/spec/enum.Literal.html
index 3c0c838ec..b203d5162 100644
--- a/api/iceberg/spec/enum.Literal.html
+++ b/api/iceberg/spec/enum.Literal.html
@@ -171,9 +171,9 @@
let t2 = Literal::decimal_from_str("123.45").unwrap();
assert_eq!(t1, t2);
-
source§impl Literal
sourcepub fn try_from_json(value: JsonValue, data_type: &Type) -> Result<Option<Self>>
Create iceberg value from a json value
See this spec for reference.
-sourcepub fn try_into_json(self, type: &Type) -> Result<JsonValue>
Converting iceberg value to json value.
+Trait Implementations§
source§impl Hash for Literal
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
diff --git a/api/iceberg/spec/enum.ManifestContentType.html b/api/iceberg/spec/enum.ManifestContentType.html
index 506d6a398..78fde0003 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
source§impl Eq for ManifestContentType
source§impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
§impl Freeze for ManifestContentType
§impl RefUnwindSafe for ManifestContentType
§impl Send for ManifestContentType
§impl Sync for ManifestContentType
§impl Unpin for ManifestContentType
§impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg_catalog_sql/enum.SqlBindStyle.html b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
index 6b4f3a9fb..38bebbb91 100644
--- a/api/iceberg_catalog_sql/enum.SqlBindStyle.html
+++ b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
@@ -1,12 +1,12 @@
-SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
Rename a table in the catalog.source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
Rename a table in the catalog.Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
index ef5dc1874..1898f41d2 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
@@ -1,8 +1,16 @@
-SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
+
+SqlBindStyle::DollarNumeric
: Binds SQL statements using $1
, $2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using ?
as a placeholder. This is for MySQL and SQLite databases.
+
+Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/error.rs.html b/api/src/iceberg_catalog_sql/error.rs.html
index cdfcd7d93..93814b9b3 100644
--- a/api/src/iceberg_catalog_sql/error.rs.html
+++ b/api/src/iceberg_catalog_sql/error.rs.html
@@ -25,6 +25,13 @@
25
26
27
+28
+29
+30
+31
+32
+33
+34
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}
\ No newline at end of file
diff --git a/api/trait.impl/core/convert/trait.From.js b/api/trait.impl/core/convert/trait.From.js
index fbfdc8b7f..8598bfcf2 100644
--- a/api/trait.impl/core/convert/trait.From.js
+++ b/api/trait.impl/core/convert/trait.From.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
+"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
Struct iceberg::expr::UnaryExpression
source · pub struct UnaryExpression<T> { /* private fields */ }
Expand description
Unary predicate, for example, a IS NULL
.
Trait Implementations§
source§impl<T: Bind> Bind for UnaryExpression<T>
impl<T: Bind> Bind for UnaryExpression<T>
source§impl<T: Clone> Clone for UnaryExpression<T>
impl<T: Clone> Clone for UnaryExpression<T>
source§fn clone(&self) -> UnaryExpression<T>
fn clone(&self) -> UnaryExpression<T>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<T: Debug> Debug for UnaryExpression<T>
impl<T: Debug> Debug for UnaryExpression<T>
source§impl<'de, T> Deserialize<'de> for UnaryExpression<T>where
+
impl<'de, T> Deserialize<'de> for UnaryExpression<T>where
+
Trait Implementations§
source§impl<T: Bind> Bind for UnaryExpression<T>
impl<T: Bind> Bind for UnaryExpression<T>
source§impl<T: Clone> Clone for UnaryExpression<T>
impl<T: Clone> Clone for UnaryExpression<T>
source§fn clone(&self) -> UnaryExpression<T>
fn clone(&self) -> UnaryExpression<T>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<T: Debug> Debug for UnaryExpression<T>
impl<T: Debug> Debug for UnaryExpression<T>
source§impl<'de, T> Deserialize<'de> for UnaryExpression<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for UnaryExpression<T>where
T: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
source§impl<T: Display> Display for UnaryExpression<T>
impl<T: Display> Display for UnaryExpression<T>
source§impl<T: PartialEq> PartialEq for UnaryExpression<T>
impl<T: PartialEq> PartialEq for UnaryExpression<T>
source§impl<T: Display> Display for UnaryExpression<T>
impl<T: Display> Display for UnaryExpression<T>
source§impl<T: PartialEq> PartialEq for UnaryExpression<T>
impl<T: PartialEq> PartialEq for UnaryExpression<T>
source§fn eq(&self, other: &UnaryExpression<T>) -> bool
fn eq(&self, other: &UnaryExpression<T>) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl<T> Serialize for UnaryExpression<T>where
T: Serialize,
impl<T> Serialize for UnaryExpression<T>where
T: Serialize,
source§fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
diff --git a/api/iceberg/spec/enum.DataFileBuilderError.html b/api/iceberg/spec/enum.DataFileBuilderError.html
index 42203fecc..c3561789a 100644
--- a/api/iceberg/spec/enum.DataFileBuilderError.html
+++ b/api/iceberg/spec/enum.DataFileBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for DataFileBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for DataFileBuilderError
Auto Trait Implementations§
§impl Freeze for DataFileBuilderError
§impl RefUnwindSafe for DataFileBuilderError
§impl Send for DataFileBuilderError
§impl Sync for DataFileBuilderError
§impl Unpin for DataFileBuilderError
§impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for DataFileBuilderError
Auto Trait Implementations§
§impl Freeze for DataFileBuilderError
§impl RefUnwindSafe for DataFileBuilderError
§impl Send for DataFileBuilderError
§impl Sync for DataFileBuilderError
§impl Unpin for DataFileBuilderError
§impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.DataFileFormat.html b/api/iceberg/spec/enum.DataFileFormat.html
index b810f86fc..f99732f5f 100644
--- a/api/iceberg/spec/enum.DataFileFormat.html
+++ b/api/iceberg/spec/enum.DataFileFormat.html
@@ -6,7 +6,7 @@
Variants§
§Avro
Avro file format: https://avro.apache.org/
§Orc
Orc file format: https://orc.apache.org/
§Parquet
Parquet file format: https://parquet.apache.org/
-Trait Implementations§
source§impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for DataFileFormat
source§impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for DataFileFormat
source§impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl Copy for DataFileFormat
source§impl Eq for DataFileFormat
source§impl StructuralPartialEq for DataFileFormat
Auto Trait Implementations§
§impl Freeze for DataFileFormat
§impl RefUnwindSafe for DataFileFormat
§impl Send for DataFileFormat
§impl Sync for DataFileFormat
§impl Unpin for DataFileFormat
§impl UnwindSafe for DataFileFormat
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.FormatVersion.html b/api/iceberg/spec/enum.FormatVersion.html
index 79063608c..f0af08ab1 100644
--- a/api/iceberg/spec/enum.FormatVersion.html
+++ b/api/iceberg/spec/enum.FormatVersion.html
@@ -4,8 +4,8 @@
}Expand description
Iceberg format version
Variants§
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
+
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
source§impl Ord for FormatVersion
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more1.21.0 · source§fn min(self, other: Self) -> Selfwhere
diff --git a/api/iceberg/spec/enum.Literal.html b/api/iceberg/spec/enum.Literal.html
index 3c0c838ec..b203d5162 100644
--- a/api/iceberg/spec/enum.Literal.html
+++ b/api/iceberg/spec/enum.Literal.html
@@ -171,9 +171,9 @@
let t2 = Literal::decimal_from_str("123.45").unwrap();
assert_eq!(t1, t2);
-
source§impl Literal
sourcepub fn try_from_json(value: JsonValue, data_type: &Type) -> Result<Option<Self>>
Create iceberg value from a json value
See this spec for reference.
-sourcepub fn try_into_json(self, type: &Type) -> Result<JsonValue>
Converting iceberg value to json value.
+Trait Implementations§
source§impl Hash for Literal
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
diff --git a/api/iceberg/spec/enum.ManifestContentType.html b/api/iceberg/spec/enum.ManifestContentType.html
index 506d6a398..78fde0003 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
source§impl Eq for ManifestContentType
source§impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
§impl Freeze for ManifestContentType
§impl RefUnwindSafe for ManifestContentType
§impl Send for ManifestContentType
§impl Sync for ManifestContentType
§impl Unpin for ManifestContentType
§impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg_catalog_sql/enum.SqlBindStyle.html b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
index 6b4f3a9fb..38bebbb91 100644
--- a/api/iceberg_catalog_sql/enum.SqlBindStyle.html
+++ b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
@@ -1,12 +1,12 @@
-SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
Rename a table in the catalog.source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
Rename a table in the catalog.Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
index ef5dc1874..1898f41d2 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
@@ -1,8 +1,16 @@
-SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
+
+SqlBindStyle::DollarNumeric
: Binds SQL statements using $1
, $2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using ?
as a placeholder. This is for MySQL and SQLite databases.
+
+Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/error.rs.html b/api/src/iceberg_catalog_sql/error.rs.html
index cdfcd7d93..93814b9b3 100644
--- a/api/src/iceberg_catalog_sql/error.rs.html
+++ b/api/src/iceberg_catalog_sql/error.rs.html
@@ -25,6 +25,13 @@
25
26
27
+28
+29
+30
+31
+32
+33
+34
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}
\ No newline at end of file
diff --git a/api/trait.impl/core/convert/trait.From.js b/api/trait.impl/core/convert/trait.From.js
index fbfdc8b7f..8598bfcf2 100644
--- a/api/trait.impl/core/convert/trait.From.js
+++ b/api/trait.impl/core/convert/trait.From.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
+"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
diff --git a/api/iceberg/spec/enum.DataFileBuilderError.html b/api/iceberg/spec/enum.DataFileBuilderError.html
index 42203fecc..c3561789a 100644
--- a/api/iceberg/spec/enum.DataFileBuilderError.html
+++ b/api/iceberg/spec/enum.DataFileBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for DataFileBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for DataFileBuilderError
Auto Trait Implementations§
§impl Freeze for DataFileBuilderError
§impl RefUnwindSafe for DataFileBuilderError
§impl Send for DataFileBuilderError
§impl Sync for DataFileBuilderError
§impl Unpin for DataFileBuilderError
§impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for DataFileBuilderError
Auto Trait Implementations§
§impl Freeze for DataFileBuilderError
§impl RefUnwindSafe for DataFileBuilderError
§impl Send for DataFileBuilderError
§impl Sync for DataFileBuilderError
§impl Unpin for DataFileBuilderError
§impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.DataFileFormat.html b/api/iceberg/spec/enum.DataFileFormat.html
index b810f86fc..f99732f5f 100644
--- a/api/iceberg/spec/enum.DataFileFormat.html
+++ b/api/iceberg/spec/enum.DataFileFormat.html
@@ -6,7 +6,7 @@
Variants§
§Avro
Avro file format: https://avro.apache.org/
§Orc
Orc file format: https://orc.apache.org/
§Parquet
Parquet file format: https://parquet.apache.org/
-Trait Implementations§
source§impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for DataFileFormat
source§impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for DataFileFormat
source§impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl Copy for DataFileFormat
source§impl Eq for DataFileFormat
source§impl StructuralPartialEq for DataFileFormat
Auto Trait Implementations§
§impl Freeze for DataFileFormat
§impl RefUnwindSafe for DataFileFormat
§impl Send for DataFileFormat
§impl Sync for DataFileFormat
§impl Unpin for DataFileFormat
§impl UnwindSafe for DataFileFormat
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.FormatVersion.html b/api/iceberg/spec/enum.FormatVersion.html
index 79063608c..f0af08ab1 100644
--- a/api/iceberg/spec/enum.FormatVersion.html
+++ b/api/iceberg/spec/enum.FormatVersion.html
@@ -4,8 +4,8 @@
}Expand description
Iceberg format version
Variants§
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
+
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
source§impl Ord for FormatVersion
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more1.21.0 · source§fn min(self, other: Self) -> Selfwhere
diff --git a/api/iceberg/spec/enum.Literal.html b/api/iceberg/spec/enum.Literal.html
index 3c0c838ec..b203d5162 100644
--- a/api/iceberg/spec/enum.Literal.html
+++ b/api/iceberg/spec/enum.Literal.html
@@ -171,9 +171,9 @@
let t2 = Literal::decimal_from_str("123.45").unwrap();
assert_eq!(t1, t2);
-
source§impl Literal
sourcepub fn try_from_json(value: JsonValue, data_type: &Type) -> Result<Option<Self>>
Create iceberg value from a json value
See this spec for reference.
-sourcepub fn try_into_json(self, type: &Type) -> Result<JsonValue>
Converting iceberg value to json value.
+Trait Implementations§
source§impl Hash for Literal
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
diff --git a/api/iceberg/spec/enum.ManifestContentType.html b/api/iceberg/spec/enum.ManifestContentType.html
index 506d6a398..78fde0003 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
source§impl Eq for ManifestContentType
source§impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
§impl Freeze for ManifestContentType
§impl RefUnwindSafe for ManifestContentType
§impl Send for ManifestContentType
§impl Sync for ManifestContentType
§impl Unpin for ManifestContentType
§impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg_catalog_sql/enum.SqlBindStyle.html b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
index 6b4f3a9fb..38bebbb91 100644
--- a/api/iceberg_catalog_sql/enum.SqlBindStyle.html
+++ b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
@@ -1,12 +1,12 @@
-SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
Rename a table in the catalog.source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
Rename a table in the catalog.Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
index ef5dc1874..1898f41d2 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
@@ -1,8 +1,16 @@
-SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
+
+SqlBindStyle::DollarNumeric
: Binds SQL statements using $1
, $2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using ?
as a placeholder. This is for MySQL and SQLite databases.
+
+Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/error.rs.html b/api/src/iceberg_catalog_sql/error.rs.html
index cdfcd7d93..93814b9b3 100644
--- a/api/src/iceberg_catalog_sql/error.rs.html
+++ b/api/src/iceberg_catalog_sql/error.rs.html
@@ -25,6 +25,13 @@
25
26
27
+28
+29
+30
+31
+32
+33
+34
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}
\ No newline at end of file
diff --git a/api/trait.impl/core/convert/trait.From.js b/api/trait.impl/core/convert/trait.From.js
index fbfdc8b7f..8598bfcf2 100644
--- a/api/trait.impl/core/convert/trait.From.js
+++ b/api/trait.impl/core/convert/trait.From.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
+"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
Expand description
Error type for DataFileBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
UninitializedField(&'static str)
Uninitialized field
ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for DataFileBuilderError
impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<String> for DataFileBuilderError
impl From<String> for DataFileBuilderError
Auto Trait Implementations§
impl Freeze for DataFileBuilderError
impl RefUnwindSafe for DataFileBuilderError
impl Send for DataFileBuilderError
impl Sync for DataFileBuilderError
impl Unpin for DataFileBuilderError
impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for DataFileBuilderError
impl Debug for DataFileBuilderError
source§impl Display for DataFileBuilderError
impl Display for DataFileBuilderError
source§impl Error for DataFileBuilderError
impl Error for DataFileBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<String> for DataFileBuilderError
impl From<String> for DataFileBuilderError
Auto Trait Implementations§
impl Freeze for DataFileBuilderError
impl RefUnwindSafe for DataFileBuilderError
impl Send for DataFileBuilderError
impl Sync for DataFileBuilderError
impl Unpin for DataFileBuilderError
impl UnwindSafe for DataFileBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
Variants§
Avro
Avro file format: https://avro.apache.org/
Orc
Orc file format: https://orc.apache.org/
Parquet
Parquet file format: https://parquet.apache.org/
-Trait Implementations§
source§impl Clone for DataFileFormat
impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
fn clone(&self) -> DataFileFormat
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for DataFileFormat
impl Debug for DataFileFormat
source§impl Display for DataFileFormat
impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
fn eq(&self, other: &DataFileFormat) -> bool
self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for DataFileFormat
impl Clone for DataFileFormat
source§fn clone(&self) -> DataFileFormat
fn clone(&self) -> DataFileFormat
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for DataFileFormat
impl Debug for DataFileFormat
source§impl Display for DataFileFormat
impl Display for DataFileFormat
source§impl FromStr for DataFileFormat
impl FromStr for DataFileFormat
source§impl PartialEq for DataFileFormat
impl PartialEq for DataFileFormat
source§fn eq(&self, other: &DataFileFormat) -> bool
fn eq(&self, other: &DataFileFormat) -> bool
self
and other
values to be equal, and is used
by ==
.impl Copy for DataFileFormat
impl Eq for DataFileFormat
impl StructuralPartialEq for DataFileFormat
Auto Trait Implementations§
impl Freeze for DataFileFormat
impl RefUnwindSafe for DataFileFormat
impl Send for DataFileFormat
impl Sync for DataFileFormat
impl Unpin for DataFileFormat
impl UnwindSafe for DataFileFormat
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.FormatVersion.html b/api/iceberg/spec/enum.FormatVersion.html
index 79063608c..f0af08ab1 100644
--- a/api/iceberg/spec/enum.FormatVersion.html
+++ b/api/iceberg/spec/enum.FormatVersion.html
@@ -4,8 +4,8 @@
}Expand description
Iceberg format version
Variants§
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
+
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
source§impl Ord for FormatVersion
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more1.21.0 · source§fn min(self, other: Self) -> Selfwhere
diff --git a/api/iceberg/spec/enum.Literal.html b/api/iceberg/spec/enum.Literal.html
index 3c0c838ec..b203d5162 100644
--- a/api/iceberg/spec/enum.Literal.html
+++ b/api/iceberg/spec/enum.Literal.html
@@ -171,9 +171,9 @@
let t2 = Literal::decimal_from_str("123.45").unwrap();
assert_eq!(t1, t2);
-
source§impl Literal
sourcepub fn try_from_json(value: JsonValue, data_type: &Type) -> Result<Option<Self>>
Create iceberg value from a json value
See this spec for reference.
-sourcepub fn try_into_json(self, type: &Type) -> Result<JsonValue>
Converting iceberg value to json value.
+Trait Implementations§
source§impl Hash for Literal
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
diff --git a/api/iceberg/spec/enum.ManifestContentType.html b/api/iceberg/spec/enum.ManifestContentType.html
index 506d6a398..78fde0003 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
source§impl Eq for ManifestContentType
source§impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
§impl Freeze for ManifestContentType
§impl RefUnwindSafe for ManifestContentType
§impl Send for ManifestContentType
§impl Sync for ManifestContentType
§impl Unpin for ManifestContentType
§impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg_catalog_sql/enum.SqlBindStyle.html b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
index 6b4f3a9fb..38bebbb91 100644
--- a/api/iceberg_catalog_sql/enum.SqlBindStyle.html
+++ b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
@@ -1,12 +1,12 @@
-SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
Rename a table in the catalog.source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
Rename a table in the catalog.Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
index ef5dc1874..1898f41d2 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
@@ -1,8 +1,16 @@
-SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
+
+SqlBindStyle::DollarNumeric
: Binds SQL statements using $1
, $2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using ?
as a placeholder. This is for MySQL and SQLite databases.
+
+Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/error.rs.html b/api/src/iceberg_catalog_sql/error.rs.html
index cdfcd7d93..93814b9b3 100644
--- a/api/src/iceberg_catalog_sql/error.rs.html
+++ b/api/src/iceberg_catalog_sql/error.rs.html
@@ -25,6 +25,13 @@
25
26
27
+28
+29
+30
+31
+32
+33
+34
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}
\ No newline at end of file
diff --git a/api/trait.impl/core/convert/trait.From.js b/api/trait.impl/core/convert/trait.From.js
index fbfdc8b7f..8598bfcf2 100644
--- a/api/trait.impl/core/convert/trait.From.js
+++ b/api/trait.impl/core/convert/trait.From.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
+"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.FormatVersion.html b/api/iceberg/spec/enum.FormatVersion.html
index 79063608c..f0af08ab1 100644
--- a/api/iceberg/spec/enum.FormatVersion.html
+++ b/api/iceberg/spec/enum.FormatVersion.html
@@ -4,8 +4,8 @@
}Expand description
Iceberg format version
Variants§
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
+
Trait Implementations§
source§impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for FormatVersion
source§impl Hash for FormatVersion
source§impl Ord for FormatVersion
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more1.21.0 · source§fn min(self, other: Self) -> Selfwhere
diff --git a/api/iceberg/spec/enum.Literal.html b/api/iceberg/spec/enum.Literal.html
index 3c0c838ec..b203d5162 100644
--- a/api/iceberg/spec/enum.Literal.html
+++ b/api/iceberg/spec/enum.Literal.html
@@ -171,9 +171,9 @@
let t2 = Literal::decimal_from_str("123.45").unwrap();
assert_eq!(t1, t2);
-
source§impl Literal
sourcepub fn try_from_json(value: JsonValue, data_type: &Type) -> Result<Option<Self>>
Create iceberg value from a json value
See this spec for reference.
-sourcepub fn try_into_json(self, type: &Type) -> Result<JsonValue>
Converting iceberg value to json value.
+Trait Implementations§
source§impl Hash for Literal
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
diff --git a/api/iceberg/spec/enum.ManifestContentType.html b/api/iceberg/spec/enum.ManifestContentType.html
index 506d6a398..78fde0003 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
source§impl Eq for ManifestContentType
source§impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
§impl Freeze for ManifestContentType
§impl RefUnwindSafe for ManifestContentType
§impl Send for ManifestContentType
§impl Sync for ManifestContentType
§impl Unpin for ManifestContentType
§impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg_catalog_sql/enum.SqlBindStyle.html b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
index 6b4f3a9fb..38bebbb91 100644
--- a/api/iceberg_catalog_sql/enum.SqlBindStyle.html
+++ b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
@@ -1,12 +1,12 @@
-SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
Rename a table in the catalog.source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
Rename a table in the catalog.Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalog
§impl !RefUnwindSafe for SqlCatalog
§impl Send for SqlCatalog
§impl Sync for SqlCatalog
§impl Unpin for SqlCatalog
§impl !UnwindSafe for SqlCatalog
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
index ef5dc1874..1898f41d2 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
@@ -1,8 +1,16 @@
-SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
+
+SqlBindStyle::DollarNumeric
: Binds SQL statements using $1
, $2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using ?
as a placeholder. This is for MySQL and SQLite databases.
+
+Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/error.rs.html b/api/src/iceberg_catalog_sql/error.rs.html
index cdfcd7d93..93814b9b3 100644
--- a/api/src/iceberg_catalog_sql/error.rs.html
+++ b/api/src/iceberg_catalog_sql/error.rs.html
@@ -25,6 +25,13 @@
25
26
27
+28
+29
+30
+31
+32
+33
+34
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}
\ No newline at end of file
diff --git a/api/trait.impl/core/convert/trait.From.js b/api/trait.impl/core/convert/trait.From.js
index fbfdc8b7f..8598bfcf2 100644
--- a/api/trait.impl/core/convert/trait.From.js
+++ b/api/trait.impl/core/convert/trait.From.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
+"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
Expand description
Iceberg format version
Variants§
Trait Implementations§
source§impl Clone for FormatVersion
impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
fn clone(&self) -> FormatVersion
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for FormatVersion
impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
source§impl Display for FormatVersion
impl Display for FormatVersion
source§impl Hash for FormatVersion
impl Hash for FormatVersion
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
+
fn hash_slice<H>(data: &[Self], state: &mut H)where
+
Trait Implementations§
source§impl Clone for FormatVersion
impl Clone for FormatVersion
source§fn clone(&self) -> FormatVersion
fn clone(&self) -> FormatVersion
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for FormatVersion
impl Debug for FormatVersion
source§impl<'de> Deserialize<'de> for FormatVersion
impl<'de> Deserialize<'de> for FormatVersion
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
source§impl Display for FormatVersion
impl Display for FormatVersion
source§impl Hash for FormatVersion
impl Hash for FormatVersion
source§impl Ord for FormatVersion
impl Ord for FormatVersion
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 · source§fn min(self, other: Self) -> Selfwhere
diff --git a/api/iceberg/spec/enum.Literal.html b/api/iceberg/spec/enum.Literal.html
index 3c0c838ec..b203d5162 100644
--- a/api/iceberg/spec/enum.Literal.html
+++ b/api/iceberg/spec/enum.Literal.html
@@ -171,9 +171,9 @@
let t2 = Literal::decimal_from_str("123.45").unwrap();
assert_eq!(t1, t2);
-
fn min(self, other: Self) -> Selfwhere
diff --git a/api/iceberg/spec/enum.Literal.html b/api/iceberg/spec/enum.Literal.html
index 3c0c838ec..b203d5162 100644
--- a/api/iceberg/spec/enum.Literal.html
+++ b/api/iceberg/spec/enum.Literal.html
@@ -171,9 +171,9 @@
let t2 = Literal::decimal_from_str("123.45").unwrap();
assert_eq!(t1, t2);
-
source§impl Literal
impl Literal
sourcepub fn try_from_json(value: JsonValue, data_type: &Type) -> Result<Option<Self>>
pub fn try_from_json(value: JsonValue, data_type: &Type) -> Result<Option<Self>>
Create iceberg value from a json value
See this spec for reference.
-sourcepub fn try_into_json(self, type: &Type) -> Result<JsonValue>
pub fn try_into_json(self, type: &Type) -> Result<JsonValue>
Converting iceberg value to json value.
+Trait Implementations§
source§impl Hash for Literal
impl Hash for Literal
1.3.0 · source§fn hash_slice<H>(data: &[Self], state: &mut H)where
diff --git a/api/iceberg/spec/enum.ManifestContentType.html b/api/iceberg/spec/enum.ManifestContentType.html
index 506d6a398..78fde0003 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
source§impl Eq for ManifestContentType
source§impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
§impl Freeze for ManifestContentType
§impl RefUnwindSafe for ManifestContentType
§impl Send for ManifestContentType
§impl Sync for ManifestContentType
§impl Unpin for ManifestContentType
§impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg_catalog_sql/enum.SqlBindStyle.html b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
index 6b4f3a9fb..38bebbb91 100644
--- a/api/iceberg_catalog_sql/enum.SqlBindStyle.html
+++ b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
@@ -1,12 +1,12 @@
-SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
Rename a table in the catalog.source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
fn hash_slice<H>(data: &[Self], state: &mut H)where
diff --git a/api/iceberg/spec/enum.ManifestContentType.html b/api/iceberg/spec/enum.ManifestContentType.html
index 506d6a398..78fde0003 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for ManifestContentType
source§impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
source§impl Eq for ManifestContentType
source§impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
§impl Freeze for ManifestContentType
§impl RefUnwindSafe for ManifestContentType
§impl Send for ManifestContentType
§impl Sync for ManifestContentType
§impl Unpin for ManifestContentType
§impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
Converts to this type from the input type.source§impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
Converts to this type from the input type.source§impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
Converts to this type from the input type.Auto Trait Implementations§
§impl !Freeze for Error
§impl RefUnwindSafe for Error
§impl Send for Error
§impl Sync for Error
§impl Unpin for Error
§impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg_catalog_sql/enum.SqlBindStyle.html b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
index 6b4f3a9fb..38bebbb91 100644
--- a/api/iceberg_catalog_sql/enum.SqlBindStyle.html
+++ b/api/iceberg_catalog_sql/enum.SqlBindStyle.html
@@ -1,12 +1,12 @@
-SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a table from the catalog.source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Load table from the catalog.source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
Create a new table inside the namespace.source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
Rename a table in the catalog.source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
Expand description
The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
Variants§
Trait Implementations§
source§impl Clone for ManifestContentType
impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
fn clone(&self) -> ManifestContentType
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ManifestContentType
impl Debug for ManifestContentType
source§impl Display for ManifestContentType
impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
fn eq(&self, other: &ManifestContentType) -> bool
self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Clone for ManifestContentType
impl Clone for ManifestContentType
source§fn clone(&self) -> ManifestContentType
fn clone(&self) -> ManifestContentType
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ManifestContentType
impl Debug for ManifestContentType
source§impl Display for ManifestContentType
impl Display for ManifestContentType
source§impl FromStr for ManifestContentType
impl FromStr for ManifestContentType
source§impl PartialEq for ManifestContentType
impl PartialEq for ManifestContentType
source§fn eq(&self, other: &ManifestContentType) -> bool
fn eq(&self, other: &ManifestContentType) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl TryFrom<i32> for ManifestContentType
impl TryFrom<i32> for ManifestContentType
impl Eq for ManifestContentType
impl StructuralPartialEq for ManifestContentType
Auto Trait Implementations§
impl Freeze for ManifestContentType
impl RefUnwindSafe for ManifestContentType
impl Send for ManifestContentType
impl Sync for ManifestContentType
impl Unpin for ManifestContentType
impl UnwindSafe for ManifestContentType
Blanket Implementations§
source§impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
impl<T> Borrow<T> for Twhere
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bba..ce602a30a 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.§UninitializedField(&'static str)
Uninitialized field
§ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more1.0.0 · source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()source§impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
§impl Freeze for SortOrderBuilderError
§impl RefUnwindSafe for SortOrderBuilderError
§impl Send for SortOrderBuilderError
§impl Sync for SortOrderBuilderError
§impl Unpin for SortOrderBuilderError
§impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index 9425a8403..8a520735c 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
Converts to this type from the input type.source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl PartialEq for Type
source§impl Eq for Type
source§impl StructuralPartialEq for Type
Auto Trait Implementations§
§impl !Freeze for Type
§impl RefUnwindSafe for Type
§impl Send for Type
§impl Sync for Type
§impl Unpin for Type
§impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
Trait Implementations§
source§impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read moresource§impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
This method tests for !=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for Schema
source§impl Eq for Schema
Auto Trait Implementations§
§impl !Freeze for Schema
§impl RefUnwindSafe for Schema
§impl Send for Schema
§impl Sync for Schema
§impl Unpin for Schema
§impl UnwindSafe for Schema
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
Trait Implementations§
source§impl Clone for StructType
source§fn clone(&self) -> StructType
Returns a copy of the value. Read more1.0.0 · source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read moresource§impl Debug for StructType
source§impl Default for StructType
source§fn default() -> StructType
Returns the “default value” for a type. Read moresource§impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl Display for StructType
source§impl From<StructType> for Type
source§fn from(value: StructType) -> Self
Converts to this type from the input type.source§impl Index<usize> for StructType
source§impl PartialEq for StructType
source§impl Serialize for StructType
source§impl Eq for StructType
Auto Trait Implementations§
§impl !Freeze for StructType
§impl RefUnwindSafe for StructType
§impl Send for StructType
§impl Sync for StructType
§impl Unpin for StructType
§impl UnwindSafe for StructType
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
Expand description
Error type for SortOrderBuilder
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
UninitializedField(&'static str)
Uninitialized field
ValidationError(String)
Custom validation error
-Trait Implementations§
source§impl Debug for SortOrderBuilderError
impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<String> for SortOrderBuilderError
impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
impl Freeze for SortOrderBuilderError
impl RefUnwindSafe for SortOrderBuilderError
impl Send for SortOrderBuilderError
impl Sync for SortOrderBuilderError
impl Unpin for SortOrderBuilderError
impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
Trait Implementations§
source§impl Debug for SortOrderBuilderError
impl Debug for SortOrderBuilderError
source§impl Display for SortOrderBuilderError
impl Display for SortOrderBuilderError
source§impl Error for SortOrderBuilderError
impl Error for SortOrderBuilderError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<String> for SortOrderBuilderError
impl From<String> for SortOrderBuilderError
Auto Trait Implementations§
impl Freeze for SortOrderBuilderError
impl RefUnwindSafe for SortOrderBuilderError
impl Send for SortOrderBuilderError
impl Sync for SortOrderBuilderError
impl Unpin for SortOrderBuilderError
impl UnwindSafe for SortOrderBuilderError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
sourcepub fn decimal_required_bytes(precision: u32) -> Result<u32>
pub fn decimal_required_bytes(precision: u32) -> Result<u32>
Returns minimum bytes required for decimal with [precision
].
sourcepub fn is_floating_type(&self) -> bool
pub fn is_floating_type(&self) -> bool
Check if it’s float or double type.
-Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
source§impl From<PrimitiveType> for Type
impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
fn from(value: PrimitiveType) -> Self
source§impl From<StructType> for Type
impl From<StructType> for Type
source§fn from(value: StructType) -> Self
fn from(value: StructType) -> Self
Trait Implementations§
source§impl<'de> Deserialize<'de> for Type
impl<'de> Deserialize<'de> for Type
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
source§impl From<PrimitiveType> for Type
impl From<PrimitiveType> for Type
source§fn from(value: PrimitiveType) -> Self
fn from(value: PrimitiveType) -> Self
source§impl From<StructType> for Type
impl From<StructType> for Type
source§fn from(value: StructType) -> Self
fn from(value: StructType) -> Self
source§impl PartialEq for Type
impl PartialEq for Type
impl Eq for Type
impl StructuralPartialEq for Type
Auto Trait Implementations§
impl !Freeze for Type
impl RefUnwindSafe for Type
impl Send for Type
impl Sync for Type
impl Unpin for Type
impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.Datum.html b/api/iceberg/spec/struct.Datum.html
index a2b5e6dfe..b59d74e05 100644
--- a/api/iceberg/spec/struct.Datum.html
+++ b/api/iceberg/spec/struct.Datum.html
@@ -265,7 +265,7 @@
sourcepub fn data_type(&self) -> &PrimitiveType
pub fn data_type(&self) -> &PrimitiveType
Get the primitive type from datum.
source§impl<'de> Deserialize<'de> for Datum
impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl From<Datum> for PrimitiveLiteral
impl From<Datum> for PrimitiveLiteral
source§impl<'de> Deserialize<'de> for Datum
impl<'de> Deserialize<'de> for Datum
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl From<Datum> for PrimitiveLiteral
impl From<Datum> for PrimitiveLiteral
source§impl PartialEq for Datum
impl PartialEq for Datum
source§fn eq(&self, other: &Datum) -> bool
fn eq(&self, other: &Datum) -> bool
self
and other
values to be equal, and is used
by ==
.1.0.0 · source§fn ne(&self, other: &Rhs) -> bool
fn ne(&self, other: &Rhs) -> bool
!=
. The default implementation is almost always
diff --git a/api/iceberg/spec/struct.Schema.html b/api/iceberg/spec/struct.Schema.html
index 3fa86b844..5a232a1d5 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
sourcepub fn field_id_by_name(&self, name: &str) -> Option<i32>
pub fn field_id_by_name(&self, name: &str) -> Option<i32>
Get field id by full name.
sourcepub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
pub fn name_by_field_id(&self, field_id: i32) -> Option<&str>
Get field id by full name.
sourcepub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
pub fn accessor_by_field_id(&self, field_id: i32) -> Option<Arc<StructAccessor>>
Get an accessor for retrieving data in a struct
-source§impl<'de> Deserialize<'de> for Schema
impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
source§impl<'de> Deserialize<'de> for Schema
impl<'de> Deserialize<'de> for Schema
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
source§impl PartialEq for Schema
impl PartialEq for Schema
impl Eq for Schema
impl !Freeze for Schema
impl RefUnwindSafe for Schema
impl Send for Schema
impl Sync for Schema
impl Unpin for Schema
impl UnwindSafe for Schema
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.SortField.html b/api/iceberg/spec/struct.SortField.html
index 8772c371a..380fd4731 100644
--- a/api/iceberg/spec/struct.SortField.html
+++ b/api/iceberg/spec/struct.SortField.html
@@ -11,8 +11,8 @@
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moreTrait Implementations§
source§impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read moresource§impl PartialEq for SortField
source§impl Eq for SortField
source§impl StructuralPartialEq for SortField
Auto Trait Implementations§
§impl Freeze for SortField
§impl RefUnwindSafe for SortField
§impl Send for SortField
§impl Sync for SortField
§impl Unpin for SortField
§impl UnwindSafe for SortField
Blanket Implementations§
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-
source§impl<'de> Deserialize<'de> for SortField
impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
- __D: Deserializer<'de>,
source§impl<'de> Deserialize<'de> for SortField
impl<'de> Deserialize<'de> for SortField
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
+ __D: Deserializer<'de>,
source§impl PartialEq for SortField
impl PartialEq for SortField
impl Eq for SortField
impl StructuralPartialEq for SortField
impl Freeze for SortField
impl RefUnwindSafe for SortField
impl Send for SortField
impl Sync for SortField
impl Unpin for SortField
impl UnwindSafe for SortField
source§impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
impl<T> Any for Twhere
diff --git a/api/iceberg/spec/struct.StructType.html b/api/iceberg/spec/struct.StructType.html
index df6528021..dbc31d136 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
sourcepub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
pub fn field_by_id(&self, id: i32) -> Option<&NestedFieldRef>
Get struct field with certain id
sourcepub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
pub fn field_by_name(&self, name: &str) -> Option<&NestedFieldRef>
Get struct field with certain field name
sourcepub fn fields(&self) -> &[NestedFieldRef]
pub fn fields(&self) -> &[NestedFieldRef]
Get fields.
-source§impl Clone for StructType
impl Clone for StructType
source§fn clone(&self) -> StructType
fn clone(&self) -> StructType
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StructType
impl Debug for StructType
source§impl Default for StructType
impl Default for StructType
source§fn default() -> StructType
fn default() -> StructType
source§impl<'de> Deserialize<'de> for StructType
impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
- D: Deserializer<'de>,
source§impl Display for StructType
impl Display for StructType
source§impl From<StructType> for Type
impl From<StructType> for Type
source§fn from(value: StructType) -> Self
fn from(value: StructType) -> Self
source§impl Index<usize> for StructType
impl Index<usize> for StructType
source§impl Clone for StructType
impl Clone for StructType
source§fn clone(&self) -> StructType
fn clone(&self) -> StructType
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StructType
impl Debug for StructType
source§impl Default for StructType
impl Default for StructType
source§fn default() -> StructType
fn default() -> StructType
source§impl<'de> Deserialize<'de> for StructType
impl<'de> Deserialize<'de> for StructType
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
+ D: Deserializer<'de>,
source§impl Display for StructType
impl Display for StructType
source§impl From<StructType> for Type
impl From<StructType> for Type
source§fn from(value: StructType) -> Self
fn from(value: StructType) -> Self
source§impl Index<usize> for StructType
impl Index<usize> for StructType
source§impl PartialEq for StructType
impl PartialEq for StructType
source§impl Serialize for StructType
impl Serialize for StructType
impl Eq for StructType
impl !Freeze for StructType
impl RefUnwindSafe for StructType
impl Send for StructType
impl Sync for StructType
impl Unpin for StructType
impl UnwindSafe for StructType
source§impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
impl<T> Any for Twhere
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 4ebbe19b5..1b7886f2e 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ §Notes
§Notes
Trait Implementations§
source§impl Error for Error
impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<ParseError> for Error
impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
fn from(v: ParseError) -> Self
source§impl From<ParseError> for Error
impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
fn from(v: ParseError) -> Self
source§impl From<TryFromIntError> for Error
impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
fn from(v: TryFromIntError) -> Self
source§impl From<TryFromSliceError> for Error
impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
fn from(v: TryFromSliceError) -> Self
Auto Trait Implementations§
impl !Freeze for Error
impl RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnwindSafe for Error
Blanket Implementations§
Trait Implementations§
source§impl Error for Error
impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<ParseError> for Error
impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
fn from(v: ParseError) -> Self
source§impl From<ParseError> for Error
impl From<ParseError> for Error
source§fn from(v: ParseError) -> Self
fn from(v: ParseError) -> Self
source§impl From<TryFromIntError> for Error
impl From<TryFromIntError> for Error
source§fn from(v: TryFromIntError) -> Self
fn from(v: TryFromIntError) -> Self
source§impl From<TryFromSliceError> for Error
impl From<TryFromSliceError> for Error
source§fn from(v: TryFromSliceError) -> Self
fn from(v: TryFromSliceError) -> Self
Auto Trait Implementations§
impl !Freeze for Error
impl RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnwindSafe for Error
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
pub enum SqlBindStyle {
+SqlBindStyle in iceberg_catalog_sql - Rust pub enum SqlBindStyle {
DollarNumeric,
QMark,
}
Expand description
Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
Variants§
§DollarNumeric
DollarNumeric uses parameters of the form `$1..$N``, which is the Postgres style
§QMark
QMark uses parameters of the form ?
which is the style for other dialects (SQLite/MySQL/MariaDB)
-Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
+Trait Implementations§
source§impl Debug for SqlBindStyle
source§impl PartialEq for SqlBindStyle
source§fn eq(&self, other: &SqlBindStyle) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl StructuralPartialEq for SqlBindStyle
Auto Trait Implementations§
§impl Freeze for SqlBindStyle
§impl RefUnwindSafe for SqlBindStyle
§impl Send for SqlBindStyle
§impl Sync for SqlBindStyle
§impl Unpin for SqlBindStyle
§impl UnwindSafe for SqlBindStyle
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/index.html b/api/iceberg_catalog_sql/index.html
index 1cc0806dc..d309f97d2 100644
--- a/api/iceberg_catalog_sql/index.html
+++ b/api/iceberg_catalog_sql/index.html
@@ -1,2 +1,2 @@
iceberg_catalog_sql - Rust Crate iceberg_catalog_sql
source · Expand description
Iceberg sql catalog implementation.
-Structs§
- Sql catalog implementation.
- Sql catalog config
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
+
Structs§
- Sql catalog implementation.
- A struct representing the SQL catalog configuration.
Enums§
- Set the SQL parameter bind style to either $1..$N (Postgres style) or ? (SQLite/MySQL/MariaDB)
\ No newline at end of file
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalog.html b/api/iceberg_catalog_sql/struct.SqlCatalog.html
index 6ad52d1a4..c8abc826c 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalog.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalog.html
@@ -1,80 +1,75 @@
-SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
-Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
-Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
+SqlCatalog in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalog
source · pub struct SqlCatalog { /* private fields */ }
Expand description
Sql catalog implementation.
+Implementations§
source§impl SqlCatalog
sourcepub async fn new(config: SqlCatalogConfig) -> Result<Self>
Create new sql catalog instance
+Trait Implementations§
source§impl Catalog for SqlCatalog
source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
- _parent: Option<&'life1 NamespaceIdent>,
+ parent: Option<&'life1 NamespaceIdent>,
) -> Pin<Box<dyn Future<Output = Result<Vec<NamespaceIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List namespaces inside the catalog.source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Create a new namespace inside the catalog.source§fn get_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Namespace>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Get a namespace information from the catalog.source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
+ namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Check if namespace exists in catalog.source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
- _namespace: &'life1 NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &'life1 NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Update a namespace inside the catalog. Read moresource§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
Drop a namespace from the catalog.source§fn list_tables<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
) -> Pin<Box<dyn Future<Output = Result<Vec<TableIdent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
List tables from namespace.source§fn table_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
Check if a table exists in the catalog.source§fn drop_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
source§fn load_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
fn load_table<'life0, 'life1, 'async_trait>( + 'life1: 'async_trait,
source§fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
fn load_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_identifier: &'life1 TableIdent,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
source§fn create_table<'life0, 'life1, 'async_trait>(
+ 'life1: 'async_trait,
fn create_table<'life0, 'life1, 'async_trait>( + 'life1: 'async_trait,
source§fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
fn create_table<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 NamespaceIdent,
_creation: TableCreation,
) -> Pin<Box<dyn Future<Output = Result<Table>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
- 'life1: 'async_trait,
source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
+ 'life1: 'async_trait,
fn rename_table<'life0, 'life1, 'life2, 'async_trait>( + 'life1: 'async_trait,
source§fn rename_table<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_src: &'life1 TableIdent,
_dest: &'life2 TableIdent,
@@ -82,12 +77,12 @@
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
- 'life2: 'async_trait,
fn rename_table<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, _src: &'life1 TableIdent, _dest: &'life2 TableIdent, @@ -82,12 +77,12 @@ Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, - 'life2: 'async_trait,
source§fn update_table<'life0, 'async_trait>(
+ 'life2: 'async_trait,
fn update_table<'life0, 'async_trait>( + 'life2: 'async_trait,
Auto Trait Implementations§
impl Freeze for SqlCatalog
impl !RefUnwindSafe for SqlCatalog
impl Send for SqlCatalog
impl Sync for SqlCatalog
impl Unpin for SqlCatalog
impl !UnwindSafe for SqlCatalog
Blanket Implementations§
impl Freeze for SqlCatalog
impl !RefUnwindSafe for SqlCatalog
impl Send for SqlCatalog
impl Sync for SqlCatalog
impl Unpin for SqlCatalog
impl !UnwindSafe for SqlCatalog
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Conv for T
impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
index ef5dc1874..1898f41d2 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
@@ -1,8 +1,16 @@
-SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
+
+SqlBindStyle::DollarNumeric
: Binds SQL statements using $1
, $2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using ?
as a placeholder. This is for MySQL and SQLite databases.
+
+Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/error.rs.html b/api/src/iceberg_catalog_sql/error.rs.html
index cdfcd7d93..93814b9b3 100644
--- a/api/src/iceberg_catalog_sql/error.rs.html
+++ b/api/src/iceberg_catalog_sql/error.rs.html
@@ -25,6 +25,13 @@
25
26
27
+28
+29
+30
+31
+32
+33
+34
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}
\ No newline at end of file
diff --git a/api/trait.impl/core/convert/trait.From.js b/api/trait.impl/core/convert/trait.From.js
index fbfdc8b7f..8598bfcf2 100644
--- a/api/trait.impl/core/convert/trait.From.js
+++ b/api/trait.impl/core/convert/trait.From.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
+"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
fn conv<T>(self) -> Twhere
diff --git a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
index ef5dc1874..1898f41d2 100644
--- a/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
+++ b/api/iceberg_catalog_sql/struct.SqlCatalogConfig.html
@@ -1,8 +1,16 @@
-SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
SqlCatalogConfig in iceberg_catalog_sql - Rust Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
+
+SqlBindStyle::DollarNumeric
: Binds SQL statements using $1
, $2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using ?
as a placeholder. This is for MySQL and SQLite databases.
+
+Implementations§
source§impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
§impl Freeze for SqlCatalogConfig
§impl !RefUnwindSafe for SqlCatalogConfig
§impl Send for SqlCatalogConfig
§impl Sync for SqlCatalogConfig
§impl Unpin for SqlCatalogConfig
§impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/error.rs.html b/api/src/iceberg_catalog_sql/error.rs.html
index cdfcd7d93..93814b9b3 100644
--- a/api/src/iceberg_catalog_sql/error.rs.html
+++ b/api/src/iceberg_catalog_sql/error.rs.html
@@ -25,6 +25,13 @@
25
26
27
+28
+29
+30
+31
+32
+33
+34
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}
\ No newline at end of file
diff --git a/api/trait.impl/core/convert/trait.From.js b/api/trait.impl/core/convert/trait.From.js
index fbfdc8b7f..8598bfcf2 100644
--- a/api/trait.impl/core/convert/trait.From.js
+++ b/api/trait.impl/core/convert/trait.From.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
+"iceberg":[["impl From<ParseError> for Error"],["impl From<ErrorKind> for &'static str"],["impl From<PrimitiveType> for Type"],["impl From<String> for DataFileBuilderError"],["impl From<String> for SortOrderBuilderError"],["impl From<TryFromSliceError> for Error"],["impl From<TryFromIntError> for Error"],["impl From<Utf8Error> for Error"],["impl From<Error> for Error"],["impl From<ParseError> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Datum> for Literal"],["impl From<Datum> for PrimitiveLiteral"],["impl From<ListType> for Type"],["impl From<MapType> for Type"],["impl From<PartitionField> for UnboundPartitionField"],["impl From<PartitionSpec> for UnboundPartitionSpec"],["impl From<SqlViewRepresentation> for ViewRepresentation"],["impl From<StructType> for Type"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<Error> for Error"],["impl From<ParquetError> for Error"],["impl From<SendError> for Error"],["impl From<UninitializedFieldError> for DataFileBuilderError"],["impl From<UninitializedFieldError> for SortOrderBuilderError"],["impl<const N: usize> From<[(Literal, Option<Literal>); N]> for Map"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
Sql catalog config
-Implementations§
source§impl SqlCatalogConfig
impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
pub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
+
Struct iceberg_catalog_sql::SqlCatalogConfig
source · pub struct SqlCatalogConfig { /* private fields */ }
Expand description
A struct representing the SQL catalog configuration.
+This struct contains various parameters that are used to configure a SQL catalog,
+such as the database URI, warehouse location, and file I/O settings.
+You are required to provide a SqlBindStyle
, which determines how SQL statements will be bound to values in the catalog.
+The options available for this parameter include:
-
+
SqlBindStyle::DollarNumeric
: Binds SQL statements using$1
,$2
, etc., as placeholders. This is for PostgreSQL databases.
+SqlBindStyle::QuestionMark
: Binds SQL statements using?
as a placeholder. This is for MySQL and SQLite databases.
+
Implementations§
source§impl SqlCatalogConfig
impl SqlCatalogConfig
sourcepub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
pub fn builder() -> SqlCatalogConfigBuilder<((), (), (), (), (), ())>
Create a builder for building SqlCatalogConfig
.
On the builder, call .uri(...)
, .name(...)
, .warehouse_location(...)
, .file_io(...)
, .sql_bind_style(...)
, .props(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of SqlCatalogConfig
.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SqlCatalogConfig
impl !RefUnwindSafe for SqlCatalogConfig
impl Send for SqlCatalogConfig
impl Sync for SqlCatalogConfig
impl Unpin for SqlCatalogConfig
impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SqlCatalogConfig
impl !RefUnwindSafe for SqlCatalogConfig
impl Send for SqlCatalogConfig
impl Sync for SqlCatalogConfig
impl Unpin for SqlCatalogConfig
impl !UnwindSafe for SqlCatalogConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Conv for T
impl<T> Conv for T
§fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
fn conv<T>(self) -> Twhere
diff --git a/api/search-index.js b/api/search-index.js
index f5b43c0e9..7d8808b3f 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,10 +1,10 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"core::array"],[2852,"core::num::error"],[2853,"apache_avro::error"],[2854,"chrono::format"],[2855,"futures_channel::mpsc"],[2856,"parquet::errors"],[2857,"reqwest::error"],[2858,"std::io::error"],[2859,"serde_json::error"],[2860,"rust_decimal::error"],[2861,"url::parser"],[2862,"core::str::error"],[2863,"opendal::types::error"],[2864,"uuid::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}0{{{h{l}}}{{h{c}}}{}}11111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{O`Nn}{ObNn}{A@nNn}44444444444{nA@f}{AFdA@f}666666666{ABdNf}77{OnOl}8888888888888{AFdAFb}9{nAFb}::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<{JfOj}========{ADjADh}>>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}2222{Md{{Bn{AB`c}}}{}}3333333{{{h{Gh}}}{{f{Gj}}}}444444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"TryFromSliceError",2851],[5,"TryFromIntError",2852],[6,"Error",2853],[5,"ParseError",2854],[5,"SendError",2855],[6,"ParquetError",2856],[5,"Error",2857],[5,"Error",2858],[5,"Error",2859],[6,"Error",2860],[6,"ParseError",2861],[5,"Utf8Error",2862],[5,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Debug-for-ErrorKind"],[138,"impl-Display-for-ErrorKind"],[147,"impl-From%3CTryFromSliceError%3E-for-Error"],[148,"impl-From%3CTryFromIntError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParseError%3E-for-Error"],[151,"impl-From%3CSendError%3E-for-Error"],[153,"impl-From%3CParquetError%3E-for-Error"],[154,"impl-From%3CError%3E-for-Error"],[155,"impl-From%3CError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CError%3E-for-Error"],[158,"impl-From%3CParseError%3E-for-Error"],[159,"impl-From%3CUtf8Error%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Display-for-Reference"],[521,"impl-Debug-for-Reference"],[522,"impl-Debug-for-BoundReference"],[523,"impl-Display-for-BoundReference"],[525,"impl-Display-for-UnaryExpression%3CT%3E"],[526,"impl-Debug-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Display-for-BoundPredicate"],[534,"impl-Debug-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-PrimitiveType"],[1434,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Debug-for-PrimitiveType"],[1711,"impl-Display-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Debug-for-DataFileBuilderError"],[1724,"impl-Display-for-DataFileBuilderError"],[1726,"impl-Display-for-DataFileFormat"],[1727,"impl-Debug-for-DataFileFormat"],[1730,"impl-Display-for-ManifestContentType"],[1731,"impl-Debug-for-ManifestContentType"],[1739,"impl-Debug-for-Schema"],[1740,"impl-Display-for-Schema"],[1747,"impl-Display-for-SortDirection"],[1748,"impl-Debug-for-SortDirection"],[1749,"impl-Debug-for-NullOrder"],[1750,"impl-Display-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Display-for-SortOrderBuilderError"],[1754,"impl-Debug-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Debug-for-Transform"],[1762,"impl-Display-for-Transform"],[1764,"impl-Display-for-Datum"],[1765,"impl-Debug-for-Datum"],[1772,"impl-Display-for-ViewFormatVersion"],[1773,"impl-Debug-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CPrimitiveType%3E-for-Type"],[1788,"impl-From%3CStructType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1802,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1831,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwEAFQcAABgHAAAmBwAAKAcAAC8HAAAyBwAANAcAAD0HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFKKSSSSFFSSSSSSSSSSSSNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNONNNNNNNNNNNNNNNNNNNNNNNNMNNIFIFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPGFFGGPFPPPPPPPPPPFPPPPGPPPPPPPPFGPPFGFIFFFFGFFPPFFPFIGGPPPFFFIPPPGGFPFFIIKFFIFGGFFFGIPFPPFPPFFFRFFIPPPPPPGPGPSFFFIPPPPPPPPPGFFIGFFIFIPPNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOMNNNNNNOONONNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNMNNNNNNNNONNONOMNNOOOOONNNNNNNNNNNNNNNNNNONNONOONNNNNNNNNNONNONMNNNHNNNNONONMNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOONNNNONNMNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIKHMMNRKKKRCMMMMMCMCFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKFFRNNNNMNNNMNNNNNNNNNNNNNNNNCNNNNNNNNNNMNFFKKNNNNNNNNNNNNNNNNMNMNNNNNNNNNNNNNNNNN","n":["AddSchema","AddSnapshot","AddSortOrder","AddSpec","AssignUuid","Catalog","CurrentSchemaIdMatch","DataInvalid","DefaultSortOrderIdMatch","DefaultSpecIdMatch","Err","Error","ErrorKind","FeatureUnsupported","LastAssignedFieldIdMatch","LastAssignedPartitionIdMatch","Namespace","NamespaceIdent","NotExist","Ok","RefSnapshotIdMatch","RemoveProperties","RemoveSnapshotRef","RemoveSnapshots","Result","SetCurrentSchema","SetDefaultSortOrder","SetDefaultSpec","SetLocation","SetProperties","SetSnapshotRef","TableCommit","TableCreation","TableIdent","TableRequirement","TableUpdate","Unexpected","UpgradeFormatVersion","UuidMatch","ViewCreation","apply","arrow","as_error_source","as_ref","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","builder","builder","builder","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","create_namespace","create_table","default_catalog","default_namespace","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop_namespace","drop_table","ensure_data_valid","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expr","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_strs","from_strs","from_vec","get_namespace","hash","hash","identifier","init","init","init","init","init","init","init","init","init","init","inner","into","into","into","into","into","into","into","into","into","into","into_static","io","kind","list_namespaces","list_tables","load_table","location","location","message","name","name","name","name","name","namespace","namespace","namespace_exists","new","new","new","new","partial_cmp","partition_spec","properties","properties","properties","rename_table","representations","scan","schema","schema","serialize","serialize","serialize","serialize","sort_order","source","spec","summary","table","table_exists","take_requirements","take_updates","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_url_string","transaction","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_context","with_properties","with_source","writer","current_schema_id","default_sort_order_id","default_spec_id","last_assigned_field_id","last_assigned_partition_id","ref","snapshot_id","uuid","format_version","last_column_id","location","ref_name","ref_name","reference","removals","schema","schema_id","snapshot","snapshot_ids","sort_order","sort_order_id","spec","spec_id","updates","uuid","ArrowReader","ArrowReaderBuilder","ArrowSchemaVisitor","T","U","after_field","after_field","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","arrow_schema_to_schema","before_field","before_field","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","borrow","borrow","borrow_mut","borrow_mut","build","clone","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","list","map","primitive","read","schema","schema_to_arrow_schema","struct","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","with_batch_size","with_data_file_concurrency_limit","with_row_group_filtering_enabled","AlwaysFalse","AlwaysFalse","AlwaysTrue","AlwaysTrue","And","And","Binary","Binary","BinaryExpression","Bind","Bound","BoundPredicate","BoundReference","BoundTerm","Eq","GreaterThan","GreaterThanOrEq","In","IsNan","IsNull","LessThan","LessThanOrEq","LogicalExpression","Not","Not","NotEq","NotIn","NotNan","NotNull","NotStartsWith","Or","Or","Predicate","PredicateOperator","Reference","Set","Set","SetExpression","StartsWith","Term","Unary","Unary","UnaryExpression","accessor","and","bind","bind","bind","bind","bind","bind","bind","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","eq","equal_to","equivalent","equivalent","field","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","greater_than","greater_than_or_equal_to","init","init","init","init","init","init","init","init","init","inputs","into","into","into","into","into","into","into","into","into","is_binary","is_in","is_nan","is_not_in","is_not_nan","is_not_null","is_null","is_set","is_unary","less_than","less_than_or_equal_to","name","negate","negate","new","new","not","not_equal_to","not_starts_with","or","rewrite_not","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","starts_with","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","FileIO","FileIOBuilder","FileMetadata","FileRead","FileWrite","GCS_NO_AUTH","GCS_PROJECT_ID","GCS_SERVICE_PATH","GCS_USER_PROJECT","InputFile","OutputFile","S3_ACCESS_KEY_ID","S3_ASSUME_ROLE_ARN","S3_ASSUME_ROLE_EXTERNAL_ID","S3_ASSUME_ROLE_SESSION_NAME","S3_ENDPOINT","S3_PATH_STYLE_ACCESS","S3_REGION","S3_SECRET_ACCESS_KEY","S3_SESSION_TOKEN","S3_SSE_KEY","S3_SSE_MD5","S3_SSE_TYPE","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","delete","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","exists","exists","fmt","fmt","fmt","fmt","from","from","from","from","from","from_path","init","init","init","init","init","into","into","into","into","into","is_exist","location","location","metadata","new","new_fs_io","new_input","new_output","read","read","reader","size","to_input_file","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","with_prop","with_props","write","write","writer","ArrowRecordBatchStream","FileScanTask","FileScanTaskStream","TableScan","TableScanBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","column_names","data_file_path","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","plan_files","predicate","project_field_ids","schema","select","select_all","serialize","snapshot","snapshot_id","to_arrow","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","with_batch_size","with_case_sensitive","with_concurrency_limit","with_data_file_concurrency_limit","with_filter","with_manifest_entry_concurrency_limit","with_row_group_filtering_enabled","Added","Append","Ascending","Avro","Binary","Binary","Boolean","Boolean","Branch","Bucket","Data","Data","DataContentType","DataFile","DataFileBuilder","DataFileBuilderError","DataFileFormat","Date","Datum","Day","Decimal","Delete","Deleted","Deletes","Descending","Double","Double","EqualityDeletes","Existing","FieldSummary","First","Fixed","Float","Float","FormatVersion","Hour","Identity","Int","Int","Int128","Last","List","List","ListType","Literal","Long","Long","Manifest","ManifestContentType","ManifestEntry","ManifestEntryRef","ManifestFile","ManifestList","ManifestListWriter","ManifestMetadata","ManifestStatus","ManifestWriter","Map","Map","Map","MapType","MetadataLog","Month","NestedField","NestedFieldRef","NullOrder","Operation","Orc","Overwrite","Parquet","PartitionField","PartitionSpec","PartitionSpecBuilder","PartitionSpecRef","PositionDeletes","Primitive","Primitive","PrimitiveLiteral","PrimitiveType","RawLiteral","Replace","Schema","SchemaBuilder","SchemaId","SchemaRef","SchemaVisitor","Snapshot","SnapshotLog","SnapshotRef","SnapshotReference","SnapshotRetention","SortDirection","SortField","SortOrder","SortOrderBuilder","SortOrderBuilderError","SortOrderRef","Sql","SqlViewRepresentation","String","String","Struct","Struct","Struct","StructType","StructValueIntoIter","Summary","T","TableMetadata","TableMetadataBuilder","TableMetadataRef","Tag","Time","Timestamp","TimestampNs","Timestamptz","TimestamptzNs","Transform","Truncate","Type","UInt128","UNASSIGNED_SEQUENCE_NUMBER","UnboundPartitionField","UnboundPartitionSpec","UnboundPartitionSpecBuilder","UnboundPartitionSpecRef","UninitializedField","UninitializedField","Unknown","Uuid","V1","V1","V2","ValidationError","ValidationError","ViewFormatVersion","ViewMetadata","ViewMetadataBuilder","ViewMetadataRef","ViewRepresentation","ViewRepresentations","ViewVersion","ViewVersionId","ViewVersionLog","ViewVersionRef","Void","Year","accessor_by_field_id","add_manifests","add_partition_field","add_partition_field","add_partition_fields","add_unbound_field","add_unbound_fields","added_files_count","added_rows_count","added_snapshot_id","after_list_element","after_list_element","after_map_key","after_map_key","after_map_value","after_map_value","after_struct_field","after_struct_field","append_snapshot","as_error_source","as_error_source","as_primitive_type","as_struct","assign_uuid","assign_uuid","before_list_element","before_list_element","before_map_key","before_map_key","before_map_value","before_map_value","before_struct_field","before_struct_field","binary","binary","bind","bool","bool","bool_from_str","bool_from_str","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build_unbound","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","builder","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","close","cmp","cmp","column_sizes","column_sizes","compatible","consume_entries","contains_nan","contains_null","content","content","content_type","content_type","current_schema","current_schema","current_snapshot","current_version","current_version_id","data_file","data_type","date","date","date_from_str","date_from_str","date_from_ymd","date_from_ymd","decimal","decimal","decimal","decimal_from_str","decimal_from_str","decimal_max_precision","decimal_required_bytes","dedup_name","default","default","default","default","default","default","default","default","default","default","default_catalog","default_namespace","default_partition_spec","default_sort_order","deleted_files_count","deleted_rows_count","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","dialect","direction","doc","double","double","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","element_field","empty","entries","entries","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equality_ids","equality_ids","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","existing_files_count","existing_rows_count","field","field_by_alias","field_by_id","field_by_id","field_by_name","field_by_name","field_by_name_case_insensitive","field_id","field_id","field_id_by_name","field_type","fields","fields","fields","fields","file_format","file_format","file_format","file_path","file_path","file_path","file_size_in_bytes","file_size_in_bytes","file_size_in_bytes","fixed","fixed","float","float","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","format_version","format_version","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_iter","from_iter","from_str","from_str","from_str","from_table_creation","from_view_creation","get","has_same_content","hash","hash","hash","hash","hash","hash","hash","highest_field_id","history","history","id","identifier_field_ids","index","index","index_by_id","index_parents","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_default","insert","int","int","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_builder","into_iter","into_iter","into_iter","into_iter","into_parts","into_unbound","is_alive","is_empty","is_empty","is_floating_type","is_nan","is_nan","is_nested","is_null_at_index","is_primitive","is_struct","is_unpartitioned","is_unsorted","iter","iter","key_field","key_metadata","key_metadata","key_metadata","last_sequence_number","last_updated_ms","last_updated_timestamp","len","len","list","list_element","literal","load_manifest","load_manifest_list","location","location","long","long","lower_bound","lower_bounds","lower_bounds","manifest_length","manifest_list","manifest_path","map","map_key_element","map_value_element","metadata_file","min_sequence_number","name","name","name","name_by_field_id","nan_value_counts","nan_value_counts","new","new","new","new","new","new","new","new","new","new","new","new","new","new_from_unbound","next","null_order","null_value_counts","null_value_counts","operation","optional","order_id","other","parent_snapshot_id","parse","parse_avro","parse_with_version","partial_cmp","partial_cmp","partial_cmp","partition","partition","partition_spec_by_id","partition_spec_id","partition_specs_iter","partition_type","partitions","preserves_order","primitive","project","properties","properties","prune_columns","record_count","record_count","representations","required","required","result_type","retention","satisfies_order_of","schema","schema","schema","schema_by_id","schema_by_id","schema_id","schema_id","schema_id","schemas_iter","schemas_iter","sequence_number","sequence_number","sequence_number","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","snapshot_by_id","snapshot_id","snapshot_id","snapshot_id","snapshots","sort_order_by_id","sort_order_id","sort_order_id","sort_orders_iter","source_id","source_id","source_id","spec_id","spec_id","split_offsets","split_offsets","sql","string","string","struct","summary","summary","time","time_from_hms_micro","time_from_hms_micro","time_from_str","time_from_str","time_micros","timestamp","timestamp","timestamp","timestamp","timestamp","timestamp_from_datetime","timestamp_from_datetime","timestamp_from_str","timestamp_from_str","timestamp_micros","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_ms","timestamp_nanos","timestamptz","timestamptz_from_datetime","timestamptz_from_datetime","timestamptz_from_str","timestamptz_from_str","timestamptz_micros","timestamptz_nanos","to","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_string","to_struct_type","to_unbound","transform","transform","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_bytes","try_from_json","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_json","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unsorted_order","upper_bound","upper_bounds","upper_bounds","uuid","uuid","uuid","uuid","uuid_from_str","uuid_from_str","v1","v2","value_counts","value_counts","value_field","version_by_id","version_id","version_id","versions","visit_schema","visit_struct","visit_type","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_alias","with_doc","with_fields","with_fields","with_identifier_field_ids","with_initial_default","with_last_assigned_field_id","with_order_id","with_schema_id","with_sort_field","with_spec_id","with_spec_id","with_write_default","write","write_default","precision","scale","max_ref_age_ms","max_ref_age_ms","max_snapshot_age_ms","min_snapshots_to_keep","StaticTable","Table","TableBuilder","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","builder","cache_size_bytes","clone","clone","clone_into","clone_into","deref","deref","deref","deref_mut","deref_mut","deref_mut","disable_cache","drop","drop","drop","file_io","file_io","fmt","fmt","from","from","from","from_metadata","from_metadata_file","identifier","identifier","init","init","init","into","into","into","into_table","metadata","metadata","metadata","metadata_location","metadata_location","metadata_ref","reader_builder","reader_builder","readonly","readonly","scan","scan","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","ReplaceSortOrderAction","Transaction","apply","asc","borrow","borrow","borrow_mut","borrow_mut","commit","deref","deref","deref_mut","deref_mut","desc","drop","drop","from","from","init","init","into","into","new","remove_properties","replace_sort_order","set_properties","try_from","try_from","try_into","try_into","type_id","type_id","upgrade_table_version","vzip","vzip","BoxedTransformFunction","TransformFunction","create_transform_function","transform","transform_literal","transform_literal_result","C","CurrentFileStatus","IcebergWriter","IcebergWriterBuilder","R","base_writer","build","close","current_file_path","current_row_num","current_written_size","file_writer","write","data_file_writer","DataFileWriter","DataFileWriterBuilder","DataFileWriterConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","close","current_file_path","current_row_num","current_written_size","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","from","from","from","init","init","init","into","into","into","new","new","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","write","FileWriter","FileWriterBuilder","ParquetWriter","ParquetWriterBuilder","R","borrow","borrow","borrow_mut","borrow_mut","build","build","clone","clone_into","close","close","current_file_path","current_row_num","current_written_size","deref","deref","deref_mut","deref_mut","drop","drop","from","from","init","init","into","into","location_generator","new","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write","write","DefaultFileNameGenerator","DefaultLocationGenerator","FileNameGenerator","LocationGenerator","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","drop","drop","from","from","generate_file_name","generate_file_name","generate_location","generate_location","init","init","into","into","new","new","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"iceberg"],[298,"iceberg::TableRequirement"],[306,"iceberg::TableUpdate"],[323,"iceberg::arrow"],[383,"iceberg::expr"],[651,"iceberg::io"],[765,"iceberg::scan"],[832,"iceberg::spec"],[2573,"iceberg::spec::PrimitiveType"],[2575,"iceberg::spec::SnapshotRetention"],[2579,"iceberg::table"],[2649,"iceberg::transaction"],[2684,"iceberg::transform"],[2690,"iceberg::writer"],[2703,"iceberg::writer::base_writer"],[2704,"iceberg::writer::base_writer::data_file_writer"],[2754,"iceberg::writer::file_writer"],[2797,"iceberg::writer::file_writer::location_generator"],[2837,"iceberg::catalog"],[2838,"iceberg::spec::table_metadata"],[2839,"iceberg::error"],[2840,"core::error"],[2841,"alloc::string"],[2842,"alloc::vec"],[2843,"core::cmp"],[2844,"std::collections::hash::map"],[2845,"core::future::future"],[2846,"alloc::boxed"],[2847,"core::pin"],[2848,"core::result"],[2849,"serde::de"],[2850,"core::fmt"],[2851,"std::io::error"],[2852,"reqwest::error"],[2853,"apache_avro::error"],[2854,"parquet::errors"],[2855,"url::parser"],[2856,"chrono::format"],[2857,"core::str::error"],[2858,"core::num::error"],[2859,"serde_json::error"],[2860,"core::array"],[2861,"futures_channel::mpsc"],[2862,"uuid::error"],[2863,"rust_decimal::error"],[2864,"opendal::types::error"],[2865,"core::iter::traits::collect"],[2866,"core::hash"],[2867,"core::option"],[2868,"core::convert"],[2869,"serde::ser"],[2870,"core::any"],[2871,"anyhow"],[2872,"iceberg::arrow::schema"],[2873,"arrow_schema::field"],[2874,"arrow_schema::schema"],[2875,"iceberg::spec::schema"],[2876,"iceberg::arrow::reader"],[2877,"arrow_schema::datatype"],[2878,"arrow_schema::fields"],[2879,"iceberg::expr::term"],[2880,"iceberg::expr::predicate"],[2881,"core::clone"],[2882,"iceberg::spec::values"],[2883,"iceberg::spec::datatypes"],[2884,"alloc::sync"],[2885,"iceberg::io::file_io"],[2886,"core::ops::range"],[2887,"bytes::bytes"],[2888,"iceberg::spec::snapshot"],[2889,"iceberg::spec::manifest_list"],[2890,"core::iter::traits::iterator"],[2891,"iceberg::spec::partition"],[2892,"iceberg::spec::transform"],[2893,"uuid"],[2894,"iceberg::spec::view_metadata"],[2895,"iceberg::spec::manifest"],[2896,"iceberg::spec::sort"],[2897,"iceberg::spec::view_version"],[2898,"rust_decimal::decimal"],[2899,"iceberg::spec::values::_serde"],[2900,"derive_builder::error"],[2901,"chrono::offset::utc"],[2902,"chrono::datetime"],[2903,"core::ops::function"],[2904,"chrono::naive::datetime"],[2905,"chrono::offset"],[2906,"serde_bytes::bytebuf"],[2907,"serde_json::value"],[2908,"bimap::hash"],[2909,"arrow_array::array"],[2910,"arrow_array::record_batch"],[2911,"core::marker"],[2912,"iceberg::writer::file_writer::parquet_writer"],[2913,"parquet::file::properties"],[2914,"iceberg::io::storage_gcs"],[2915,"iceberg::io::storage_s3"]],"i":[1,1,1,1,1,0,25,12,25,25,3,0,0,12,25,25,0,0,25,3,25,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,12,1,25,0,1,0,27,6,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,21,30,31,12,6,13,14,1,12,6,13,14,1,6,16,16,31,31,27,12,6,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,6,14,25,1,27,12,6,13,14,21,30,25,1,31,16,16,0,12,6,13,14,25,1,12,12,6,6,13,13,14,14,0,27,27,12,12,6,13,14,21,30,25,1,31,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,12,6,13,14,21,30,25,1,31,6,14,6,16,6,14,30,27,12,6,13,14,21,30,25,1,31,6,27,12,6,13,14,21,30,25,1,31,12,0,27,16,16,16,21,31,27,13,14,14,21,31,14,14,16,27,6,13,14,6,21,13,21,31,16,31,0,21,31,6,14,25,1,21,27,0,31,0,16,30,30,12,6,13,14,1,27,12,6,0,0,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,27,12,6,13,14,21,30,25,1,31,16,16,27,12,6,13,14,21,30,25,1,31,27,13,27,0,220,221,222,223,224,225,225,226,227,228,229,230,231,230,232,228,233,234,235,236,237,238,239,240,241,0,0,0,58,58,58,58,58,58,58,58,58,58,0,58,58,58,58,58,58,58,58,62,63,62,63,62,63,63,62,63,62,63,62,63,62,63,62,63,62,63,58,58,58,63,58,0,58,63,62,63,62,63,62,63,62,63,62,62,62,69,78,69,78,69,78,69,78,0,0,71,0,0,0,80,80,80,80,80,80,80,80,0,69,78,80,80,80,80,80,69,78,0,0,0,69,78,0,80,0,69,78,0,68,69,71,73,74,75,76,77,69,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,68,68,73,73,68,68,74,75,75,76,76,77,77,69,69,78,78,80,80,73,68,74,75,76,77,69,78,80,73,73,73,68,74,75,76,77,69,78,80,74,73,68,74,75,76,77,69,78,80,80,73,73,73,73,73,73,80,80,73,73,73,69,80,73,68,69,73,73,69,69,73,68,74,75,76,77,69,78,80,73,73,68,74,75,76,77,69,78,80,73,68,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,73,68,74,75,76,77,69,78,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,92,91,95,96,97,92,91,95,96,91,92,92,93,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,95,96,92,91,95,96,97,92,91,95,96,92,97,92,91,95,96,97,92,91,95,96,92,95,96,95,91,91,92,92,98,95,95,97,96,92,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,97,92,91,95,96,91,91,93,96,96,0,0,0,0,0,102,103,104,102,103,104,102,104,104,103,104,102,103,104,102,103,104,104,102,103,104,103,104,102,103,104,102,103,104,102,103,104,103,104,104,104,102,102,104,103,102,103,104,102,103,104,102,103,104,102,103,104,102,103,104,102,102,102,102,102,102,102,140,147,151,142,120,157,120,157,150,113,141,144,0,0,0,0,0,120,0,113,120,147,140,144,151,120,157,141,140,0,152,120,120,157,0,113,113,120,157,157,152,119,125,0,0,120,157,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,113,0,0,0,0,142,147,142,0,0,0,0,141,119,125,0,0,0,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,120,157,0,119,125,0,0,0,116,0,0,0,150,120,120,120,120,120,0,113,0,157,0,0,0,0,0,131,177,113,120,154,161,154,131,177,0,0,0,0,0,0,0,0,0,0,113,113,61,109,112,114,112,114,114,110,110,110,116,116,116,116,116,116,116,116,117,131,177,119,61,2,123,116,116,116,116,116,116,116,116,83,125,126,83,125,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,2,123,129,112,114,132,133,133,138,139,146,127,115,126,61,118,153,134,162,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,109,154,161,130,129,120,143,145,145,129,110,139,130,117,128,117,128,128,139,83,83,125,83,125,83,125,119,83,125,83,125,119,119,113,121,129,145,127,126,112,147,133,134,158,162,162,117,117,110,110,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,165,153,84,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,135,159,137,143,119,120,121,84,135,136,137,138,139,140,130,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,130,129,119,119,120,120,121,121,84,84,135,135,136,136,137,137,138,138,139,139,140,140,130,130,141,141,142,142,144,144,145,145,146,146,127,127,115,115,126,126,61,61,147,147,148,148,118,118,149,149,150,150,151,151,152,152,153,153,134,134,117,117,154,154,155,155,156,156,113,113,157,157,83,83,158,158,125,125,159,159,128,128,160,160,161,161,162,162,163,163,164,164,165,165,110,110,116,61,121,61,121,61,61,146,115,61,84,121,127,126,134,139,130,129,139,130,129,139,130,129,83,125,83,125,109,119,119,120,120,121,121,84,84,135,136,137,138,139,140,130,131,131,141,142,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,151,152,152,153,153,177,177,134,117,154,154,155,156,113,113,157,83,83,158,125,159,173,128,160,161,161,162,163,164,165,117,128,182,109,2,183,123,119,119,119,119,119,120,121,84,135,136,137,138,139,140,130,129,131,131,131,141,142,143,110,144,145,146,127,115,115,126,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,177,177,134,117,154,155,156,113,157,157,83,158,158,125,125,159,173,128,160,161,162,163,164,164,165,158,159,142,144,113,2,123,158,158,120,154,157,83,158,125,159,61,117,128,84,61,121,159,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,84,158,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,125,61,183,158,159,163,137,146,139,158,163,119,157,83,119,159,119,119,127,134,159,163,136,130,129,110,117,117,117,158,163,116,84,83,110,118,117,128,83,125,145,130,129,110,118,110,116,84,84,155,110,84,146,115,61,130,129,182,2,123,121,84,135,136,137,112,114,149,158,160,114,183,153,130,129,148,84,134,148,118,138,137,143,154,83,161,130,129,117,110,117,127,110,113,116,113,117,128,0,130,129,162,84,84,113,149,113,116,118,162,117,128,61,118,162,117,128,139,118,110,119,120,120,121,84,146,127,115,126,61,147,148,118,149,150,151,152,153,134,117,154,155,156,113,83,173,128,160,161,162,163,164,165,117,118,149,156,117,117,130,129,117,146,115,153,127,126,130,129,165,83,125,116,118,162,125,83,125,83,125,83,118,156,125,160,162,83,125,83,125,83,156,160,162,155,156,83,125,83,125,83,125,83,83,83,83,119,120,121,84,135,136,137,138,139,140,130,129,141,142,143,110,144,145,146,127,115,126,61,147,148,118,149,150,151,152,153,133,134,117,154,155,156,113,157,83,158,125,159,128,160,161,162,163,164,165,119,120,121,84,131,142,144,61,151,152,153,177,154,113,83,161,119,127,146,115,153,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,140,130,129,131,141,141,142,143,110,144,144,145,146,127,115,126,112,114,61,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,83,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,173,128,160,161,162,163,164,165,125,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,134,145,130,129,117,83,125,128,83,125,109,109,130,129,136,128,160,162,128,0,0,0,182,109,2,183,123,119,120,121,84,135,136,137,138,139,140,130,129,131,141,142,143,110,144,145,146,127,115,126,112,114,61,132,147,148,118,149,150,151,152,153,133,177,134,117,154,155,156,113,157,83,158,125,159,173,128,160,161,162,163,164,165,132,84,132,133,132,84,114,133,132,133,112,114,84,182,84,242,242,243,244,243,243,0,0,0,192,193,194,192,193,194,192,193,192,193,194,193,194,192,193,194,192,193,194,192,192,193,194,192,193,193,194,192,193,194,194,194,192,193,192,193,194,192,193,194,194,192,193,194,192,193,193,193,194,192,193,193,194,193,194,192,193,194,192,193,194,192,193,194,192,193,194,0,0,196,196,197,196,197,196,197,197,196,197,196,196,197,196,197,196,197,196,197,196,197,197,197,197,197,196,197,196,197,196,197,197,196,0,0,0,199,199,199,203,0,0,0,203,0,203,204,205,205,205,0,204,0,0,0,0,209,208,206,209,208,206,206,206,206,208,208,208,208,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,208,206,209,206,206,209,208,206,209,208,206,209,208,206,209,208,206,208,0,0,0,0,207,216,213,216,213,207,213,213,213,212,216,216,216,216,216,213,216,213,216,213,216,213,216,213,216,213,0,213,213,216,213,216,213,216,213,216,213,212,216,0,0,0,0,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219,215,219,214,218,218,219,218,219,218,219,218,219,218,219,218,219,218,219,218,219],"f":"````````````````````````````````````````{{bd}{{f{d}}}}`{{{h{c}}}{{h{j}}}{}}{{{h{l}}}{{h{{A`{n}}}}}}{{{h{c}}}{{h{e}}}{}{}}000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000{{}{{`{{Af{AdAdAdAdAdAd}}}}}}{{}{{`{{Af{AdAdAd}}}}}}{{}{{`{{Af{AdAdAdAdAdAdAdAd}}}}}}{{{h{Ah}}}Ah}{{{h{l}}}l}{{{h{Aj}}}Aj}{{{h{Al}}}Al}{{{h{b}}}b}{{{h{c}}{h{Abe}}}Ad{}{}}0000{{{h{l}}{h{l}}}An}{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{l}}Bj}{{Bh{{Bf{Bd}}}}}}``{Bl{{h{c}}}{}}00{{{h{l}}}{{h{c}}}{}}1111111{Bl{{h{Abc}}}{}}000000000{c{{Bn{l}}}C`}{c{{Bn{Al}}}C`}{c{{Bn{Cb}}}C`}{c{{Bn{b}}}C`}{BlAd}000000000{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}`{{{h{Ah}}{h{Ah}}}Cd}{{{h{l}}{h{l}}}Cd}{{{h{Aj}}{h{Aj}}}Cd}{{{h{Al}}{h{Al}}}Cd}{{{h{Cb}}{h{Cb}}}Cd}{{{h{b}}{h{b}}}Cd}{{{h{c}}{h{e}}}Cd{}{}}0000000`{{{h{Cf}}{h{AbCh}}}Cj}0{{{h{Ah}}{h{AbCh}}}Cj}0{{{h{l}}{h{AbCh}}}Cj}{{{h{Aj}}{h{AbCh}}}Cj}{{{h{Al}}{h{AbCh}}}Cj}{{{h{Bj}}{h{AbCh}}}Cj}{{{h{Cl}}{h{AbCh}}}Cj}{{{h{Cb}}{h{AbCh}}}Cj}{{{h{b}}{h{AbCh}}}Cj}{{{h{Cn}}{h{AbCh}}}Cj}{D`Cf}{DbCf}{DdCf}{DfCf}{DhCf}{cc{}}{DjCf}{DlCf}{DnCf}{E`Cf}{EbCf}{EdCf}{EfCf}{EhCf}{EjCf}999999999{e{{f{l}}}El{{F`{}{{En{c}}}}}}{e{{f{Al}}}El{{F`{}{{En{c}}}}}}{{{A`{n}}}{{f{l}}}}{{{h{B`}}{h{l}}}{{Bh{{Bf{Bd}}}}}}{{{h{l}}{h{Abc}}}AdFb}{{{h{Al}}{h{Abc}}}AdFb}{{{h{Cl}}}{{h{Al}}}}{{}Bl}000000000{l{{A`{n}}}}{ce{}{}}000000000{Ah{{h{Fd}}}}`{{{h{Cf}}}Ah}{{{h{B`}}{Ff{{h{l}}}}}{{Bh{{Bf{Bd}}}}}}9{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}``{{{h{Cf}}}{{h{Fd}}}}{{{h{Aj}}}{{h{l}}}}{{{h{Al}}}{{h{Fd}}}}```{{{h{Al}}}{{h{l}}}}`>{{Ahc}Cf{{Fh{n}}}}{nl}{lAj}{{ln}Al}{{{h{l}}{h{l}}}{{Ff{An}}}}`{{{h{Aj}}}{{h{{Bb{nn}}}}}}``{{{h{B`}}{h{Al}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}````{{{h{l}}c}BnFj}{{{h{Al}}c}BnFj}{{{h{Cb}}c}BnFj}{{{h{b}}c}BnFj}`{{{h{Cf}}}{{Ff{{h{j}}}}}}```{{{h{B`}}{h{Al}}}{{Bh{{Bf{Bd}}}}}}{{{h{AbCl}}}{{A`{Cb}}}}{{{h{AbCl}}}{{A`{b}}}}{{{h{c}}}e{}{}}0000{{{h{c}}}n{}}0{{{h{l}}}n}``{c{{Bn{e}}}{}{}}0000000000000000000{{{h{c}}}Fl{}}000000000{{{h{B`}}{h{l}}{Bb{nn}}}{{Bh{{Bf{Bd}}}}}}{{{h{B`}}Cl}{{Bh{{Bf{Bd}}}}}}{ce{}{}}000000000{{Cf{h{Fd}}c}Cf{{Fh{n}}}}{{l{Bb{nn}}}Aj}{{Cfc}Cf{{Fh{Fn}}}}```````````````````````````````{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gf}}}{{f{Ad}}}{}{}}0000000{{{h{Gh}}}{{f{Gj}}}}11111111{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{GlGn}{{{h{Gn}}}Gn}{{{h{c}}{h{Abe}}}Ad{}{}}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0??{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}c}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}cc}{{f{c}}}{}{}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{H`}}}{{f{c}}}{}{}}{{GnHb}{{f{Hd}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Gh}}{A`{c}}}{{f{e}}}{}{}}{{{h{Gj}}}{{f{Gh}}}}{{{h{Ab{Gd{}{{G`{c}}{Gb{e}}}}}}{h{Hf}}{A`{c}}}{{f{c}}}{}{}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{ce{}{}}0{{GlBl}Gl}0{{GlCd}Gl}```````````````````````````````````````````{{{h{Hh}}}{{h{`}}}}{{HjHj}Hj}{{{h{{Hn{}{{Hl{c}}}}}}I`Cd}{{f{c}}}{}}{{{h{Ib}}I`Cd}{{f{c}}}{}}{{{h{{Id{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{If{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ih{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{{Ij{c}}}}I`Cd}{{f{e}}}Hn{}}{{{h{Hj}}I`Cd}{{f{Il}}}}{{{h{c}}}{{h{e}}}{}{}}00000000{{{h{Abc}}}{{h{Abe}}}{}{}}00000000{{{h{Ib}}}Ib}{{{h{Hh}}}Hh}{{{h{{Id{c}}}}}{{Id{c}}}In}{{{h{{If{c}}}}}{{If{c}}}In}{{{h{{Ih{c}}}}}{{Ih{c}}}In}{{{h{{Ij{c}}}}}{{Ij{c}}}In}{{{h{Hj}}}Hj}{{{h{Il}}}Il}{{{h{J`}}}J`}{{{h{c}}{h{Abe}}}Ad{}{}}00000000{Bl{{h{c}}}{}}00000000{Bl{{h{Abc}}}{}}00000000{c{{Bn{Ib}}}C`}{c{{Bn{Hh}}}C`}{c{{Bn{{Id{e}}}}}C`Jb}{c{{Bn{{If{e}}}}}C`Jb}{c{{Bn{{Ih{e}}}}}C`Jb}{c{{Bn{{Ij{e}}}}}C`Jb}{c{{Bn{Hj}}}C`}{c{{Bn{Il}}}C`}{c{{Bn{J`}}}C`}{BlAd}00000000{{{h{Ib}}{h{Ib}}}Cd}{{{h{Hh}}{h{Hh}}}Cd}{{{h{{Id{c}}}}{h{{Id{c}}}}}CdJd}{{{h{{If{c}}}}{h{{If{c}}}}}CdJd}{{{h{{Ih{c}}}}{h{{Ih{c}}}}}CdJd}{{{h{{Ij{c}}}}{h{{Ij{c}}}}}CdJd}{{{h{Hj}}{h{Hj}}}Cd}{{{h{Il}}{h{Il}}}Cd}{{{h{J`}}{h{J`}}}Cd}{{IbJf}Hj}{{{h{c}}{h{e}}}Cd{}{}}0{{{h{Hh}}}{{h{Jh}}}}{{{h{Ib}}{h{AbCh}}}Cj}0{{{h{Hh}}{h{AbCh}}}Cj}0{{{h{{Id{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJj}{{{h{{If{c}}}}{h{AbCh}}}CjJl}{{{h{{Ih{c}}}}{h{AbCh}}}CjJj}{{{h{{Ih{c}}}}{h{AbCh}}}CjJl}{{{h{{Ij{c}}}}{h{AbCh}}}Cj{JlJj}}{{{h{{Ij{c}}}}{h{AbCh}}}CjJj}{{{h{Hj}}{h{AbCh}}}Cj}0{{{h{Il}}{h{AbCh}}}Cj}0{{{h{J`}}{h{AbCh}}}Cj}0{cc{}}00000000??{{}Bl}00000000{{{h{{Id{c}}}}}{{Jn{{h{c}}}}}{}}{ce{}{}}00000000{J`Cd}{{Ibc}Hj{{F`{}{{En{Jf}}}}}}{IbHj}100022{{IbJf}Hj}0{{{h{Ib}}}{{h{Fd}}}}{HjHj}{J`J`}{cIb{{Fh{n}}}}{{cK`{Kb{`}}}Hh{{Fh{n}}}}{Hjc{}}66{{HjHj}Hj}5{{{h{Ib}}c}BnFj}{{{h{Hh}}c}BnFj}{{{h{{Id{c}}}}e}BnKdFj}{{{h{{If{c}}}}e}BnKdFj}{{{h{{Ih{c}}}}e}BnKdFj}{{{h{{Ij{c}}}}e}BnKdFj}{{{h{Hj}}c}BnFj}{{{h{Il}}c}BnFj}{{{h{J`}}c}BnFj}{{IbJf}Hj}{{{h{c}}}e{}{}}00000000{{{h{c}}}n{}}0000000{c{{Bn{e}}}{}{}}00000000000000000{{{h{c}}}Fl{}}00000000{ce{}{}}00000000```````````````````````{{{h{c}}}{{h{e}}}{}{}}0000{{{h{Abc}}}{{h{Abe}}}{}{}}0000{Kf{{f{Kh}}}}{{{h{Kh}}}Kh}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{AbKj}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kh}}c}{{f{Ad}}}{{Kl{Fd}}}}{Bl{{h{c}}}{}}0000{Bl{{h{Abc}}}{}}0000{BlAd}0000{{{h{Kn}}}{{f{Cd}}}}{{{h{L`}}}{{f{Cd}}}}{{{h{Kh}}{h{AbCh}}}Cj}{{{h{Kf}}{h{AbCh}}}Cj}{{{h{Kn}}{h{AbCh}}}Cj}{{{h{L`}}{h{AbCh}}}Cj}{cc{}}0000{c{{f{Kf}}}{{Kl{Fd}}}}{{}Bl}0000{ce{}{}}0000{{{h{Kh}}c}{{f{Cd}}}{{Kl{Fd}}}}{{{h{Kn}}}{{h{Fd}}}}{{{h{L`}}}{{h{Fd}}}}{{{h{Kn}}}{{f{Lb}}}}{cKfEl}{{}Kf}{{{h{Kh}}c}{{f{Kn}}}{{Kl{Fd}}}}{{{h{Kh}}c}{{f{L`}}}{{Kl{Fd}}}}{{{h{Ld}}{Lh{Lf}}}{{Bh{{Bf{Bd}}}}}}{{{h{Kn}}}{{f{Lj}}}}{{{h{Kn}}}{{f{{`{Ld}}}}}}`{L`Kn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000000000{{{h{c}}}Fl{}}0000?????{{Kfce}KfElEl}{{Kfg}KfElEl{{F`{}{{En{{Af{ce}}}}}}}}{{{h{AbKj}}Lj}{{Bh{{Bf{Bd}}}}}}{{{h{L`}}Lj}{{f{Ad}}}}{{{h{L`}}}{{f{{Bf{Kj}}}}}}`````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{Ll{{f{Ln}}}}{{{h{M`}}}M`}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ln}}}{{h{{Mb{n}}}}}}{{{h{M`}}}{{h{Fd}}}}{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{c{{Bn{M`}}}C`}{BlAd}00{{{h{Ln}}{h{AbCh}}}Cj}{{{h{M`}}{h{AbCh}}}Cj}{cc{}}00{{}Bl}00{ce{}{}}00{{{h{Ln}}}{{f{Hb}}}}{{{h{M`}}}{{Ff{{h{Il}}}}}}{{{h{M`}}}{{h{{Mb{Md}}}}}}{{{h{M`}}}{{h{Gj}}}}{{Lle}LlEl{{F`{}{{En{c}}}}}}{LlLl}{{{h{M`}}c}BnFj}{{{h{Ln}}}{{h{Mf}}}}{{LlMh}Ll}{{{h{Ln}}}{{f{Hd}}}}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00==={{Ll{Ff{Bl}}}Ll}{{LlCd}Ll}{{LlBl}Ll}0{{LlHj}Ll}12```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{h{Gj}}Md}{{Ff{{Kb{`}}}}}}{{{h{AbMj}}c}{{f{Ad}}}{{Mn{}{{En{Ml}}}}}}{{N`MdcNb}{{f{N`}}}El}{{NdceNb}{{f{Nd}}}{{Kl{Fd}}}{{Fh{n}}}}{{N`c}{{f{N`}}}{{F`{}{{En{Nf}}}}}}{{NdNf}{{f{Nd}}}}{{Ndc}{{f{Nd}}}{{F`{}{{En{Nf}}}}}}```{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}}{{f{Ad}}}{}}0000000{{{h{AbNj}}Nl}Ad}{{{h{c}}}{{h{j}}}{}}0{{{h{Nn}}}{{Ff{{h{O`}}}}}}{{{h{Gj}}}{{h{Ob}}}}{{dOd}{{f{d}}}}{{OfOd}{{f{Of}}}}66666666{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{{Ol{h{Gj}}}{{f{On}}}}{cJf{{Fh{Cd}}}}{cOj{{Fh{Cd}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{{h{c}}}{{h{e}}}{}{}}000000000000000000000000000000000000000000000000000000000000{{{h{Abc}}}{{h{Abe}}}{}{}}000000000000000000000000000000000000000000000000000000000000{d{{f{Nj}}}}{Of{{f{A@`}}}}{{{h{A@b}}}{{Bn{A@dA@f}}}}{N`Ol}{Nd{{f{On}}}}{A@h{{f{Gj}}}}{{{h{A@j}}Gj}{{f{A@l}}}}{{{h{A@j}}}{{f{A@l}}}}{{}{{`{{Af{AdAdAdAdAd}}}}}}0{{}{{`{{Af{AdAdAdAd}}}}}}{{{h{Gj}}}Nd}1{{}N`}{{}A@h}{{}{{`{{Af{AdAdAdAdAdAdAd}}}}}}4{{}A@j}1{{{h{Nn}}}Nn}{{{h{O`}}}O`}{{{h{Ob}}}Ob}{{{h{Jh}}}Jh}{{{h{A@n}}}A@n}{{{h{AA`}}}AA`}{{{h{AAb}}}AAb}{{{h{AAd}}}AAd}{{{h{AAf}}}AAf}{{{h{AAh}}}AAh}{{{h{A@d}}}A@d}{{{h{A@b}}}A@b}{{{h{AAj}}}AAj}{{{h{AAl}}}AAl}{{{h{AAn}}}AAn}{{{h{Ml}}}Ml}{{{h{AB`}}}AB`}{{{h{ABb}}}ABb}{{{h{ABd}}}ABd}{{{h{On}}}On}{{{h{Nf}}}Nf}{{{h{Ol}}}Ol}{{{h{Gj}}}Gj}{{{h{ABf}}}ABf}{{{h{ABh}}}ABh}{{{h{Nl}}}Nl}{{{h{ABj}}}ABj}{{{h{ABl}}}ABl}{{{h{ABn}}}ABn}{{{h{AC`}}}AC`}{{{h{ACb}}}ACb}{{{h{A@j}}}A@j}{{{h{A@l}}}A@l}{{{h{Nj}}}Nj}{{{h{ACd}}}ACd}{{{h{ACf}}}ACf}{{{h{ACh}}}ACh}{{{h{Nb}}}Nb}{{{h{ACj}}}ACj}{{{h{Jf}}}Jf}{{{h{ACl}}}ACl}{{{h{Oj}}}Oj}{{{h{ACn}}}ACn}{{{h{A@`}}}A@`}{{{h{AD`}}}AD`}{{{h{ADb}}}ADb}{{{h{ADd}}}ADd}{{{h{ADf}}}ADf}{{{h{ADh}}}ADh}{{{h{ADj}}}ADj}{{{h{c}}{h{Abe}}}Ad{}{}}0000000000000000000000000000000000000000000000000{Mj{{f{Ad}}}}{{{h{ACd}}{h{ACd}}}An}{{{h{ADb}}{h{ADb}}}An}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{{h{O`}}{h{ACj}}}Cd}{AAn{{`{{F`{}{{En{Ml}}}}}}}}``{{{h{AbA@b}}AAj}{{h{AbA@b}}}}`{{{h{AAf}}}AAj}{{{h{A@d}}}AAj}{{{h{Nj}}}{{h{I`}}}}{{{h{A@`}}}{{h{I`}}}}{{{h{Nj}}}{{Ff{{h{Mf}}}}}}{{{h{A@`}}}{{h{ADl}}}}{{{h{A@`}}}ADn}{{{h{AAf}}}{{h{A@d}}}}{{{h{Jf}}}{{h{O`}}}}{MdJf}{MdOj}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{MdAE`AE`}{{f{Jf}}}}{{MdAE`AE`}{{f{Oj}}}}{{AE`AE`}{{f{Nn}}}}{c{{f{Jf}}}{{Fh{AEb}}}}{AEdOj}65{AE`{{f{AE`}}}}0{{{h{Nb}}}n}{{}Ob}{{}A@b}{{}ABb}{{}On}{{}Ol}{{}N`}{{}ABf}{{}A@j}{{}A@l}{{}ACl}{{{h{ADd}}}{{Ff{{h{n}}}}}}{{{h{ADd}}}{{h{l}}}}{{{h{Nj}}}{{Ff{{h{AEf}}}}}}{{{h{Nj}}}{{Ff{{h{AEh}}}}}}``{Bl{{h{c}}}{}}000000000000000000000000000000000000000000000000000000000000{Bl{{h{Abc}}}{}}000000000000000000000000000000000000000000000000000000000000{c{{Bn{Nn}}}C`}{c{{Bn{O`}}}C`}0{c{{Bn{Ob}}}C`}{c{{Bn{Jh}}}C`}{c{{Bn{ABd}}}C`}{c{{Bn{On}}}C`}{c{{Bn{Nf}}}C`}{c{{Bn{Ol}}}C`}{c{{Bn{Gj}}}C`}{c{{Bn{ABf}}}C`}{c{{Bn{ABh}}}C`}{c{{Bn{Nl}}}C`}{c{{Bn{ABj}}}C`}{c{{Bn{ABl}}}C`}{c{{Bn{ABn}}}C`}{c{{Bn{AC`}}}C`}{c{{Bn{ACb}}}C`}{c{{Bn{A@l}}}C`}{c{{Bn{Nj}}}C`}{c{{Bn{ACd}}}C`}{c{{Bn{ACf}}}C`}{c{{Bn{ACh}}}C`}{c{{Bn{Nb}}}C`}{c{{Bn{Jf}}}C`}{c{{Bn{AEj}}}C`}{c{{Bn{A@`}}}C`}{c{{Bn{AD`}}}C`}{c{{Bn{ADb}}}C`}{c{{Bn{ADd}}}C`}{c{{Bn{ADf}}}C`}{c{{Bn{ADh}}}C`}{c{{Bn{ADj}}}C`}```{cJf{{Fh{AEl}}}}{cOj{{Fh{AEl}}}}{BlAd}000000000000000000000000000000000000000000000000000000000000`{{}ACn}{{{h{AAb}}}{{h{{Mb{AEn}}}}}}{{{h{AAn}}}{{h{{Mb{Ml}}}}}}{{{h{Nn}}{h{Nn}}}Cd}{{{h{O`}}{h{O`}}}Cd}{{{h{Ob}}{h{Ob}}}Cd}{{{h{Jh}}{h{Jh}}}Cd}{{{h{A@n}}{h{A@n}}}Cd}{{{h{AA`}}{h{AA`}}}Cd}{{{h{AAb}}{h{AAb}}}Cd}{{{h{AAd}}{h{AAd}}}Cd}{{{h{AAf}}{h{AAf}}}Cd}{{{h{AAh}}{h{AAh}}}Cd}{{{h{A@d}}{h{A@d}}}Cd}{{{h{AAj}}{h{AAj}}}Cd}{{{h{AAl}}{h{AAl}}}Cd}{{{h{AAn}}{h{AAn}}}Cd}{{{h{Ml}}{h{Ml}}}Cd}{{{h{AB`}}{h{AB`}}}Cd}{{{h{ABb}}{h{ABb}}}Cd}{{{h{ABd}}{h{ABd}}}Cd}{{{h{On}}{h{On}}}Cd}{{{h{Nf}}{h{Nf}}}Cd}{{{h{Ol}}{h{Ol}}}Cd}{{{h{Gj}}{h{Gj}}}Cd}{{{h{ABf}}{h{ABf}}}Cd}{{{h{ABh}}{h{ABh}}}Cd}{{{h{Nl}}{h{Nl}}}Cd}{{{h{ABj}}{h{ABj}}}Cd}{{{h{ABl}}{h{ABl}}}Cd}{{{h{ABn}}{h{ABn}}}Cd}{{{h{AC`}}{h{AC`}}}Cd}{{{h{ACb}}{h{ACb}}}Cd}{{{h{A@l}}{h{A@l}}}Cd}{{{h{Nj}}{h{Nj}}}Cd}{{{h{ACd}}{h{ACd}}}Cd}{{{h{ACf}}{h{ACf}}}Cd}{{{h{ACh}}{h{ACh}}}Cd}{{{h{Nb}}{h{Nb}}}Cd}{{{h{ACj}}{h{ACj}}}Cd}{{{h{Jf}}{h{Jf}}}Cd}{{{h{ACl}}{h{ACl}}}Cd}{{{h{Oj}}{h{Oj}}}Cd}{{{h{ACn}}{h{ACn}}}Cd}{{{h{A@`}}{h{A@`}}}Cd}{{{h{AD`}}{h{AD`}}}Cd}{{{h{ADb}}{h{ADb}}}Cd}{{{h{ADd}}{h{ADd}}}Cd}{{{h{ADf}}{h{ADf}}}Cd}{{{h{ADh}}{h{ADh}}}Cd}{{{h{ADj}}{h{ADj}}}Cd}{{{h{A@d}}}{{h{{Mb{Md}}}}}}{{{h{AbA@b}}{A`{Md}}}{{h{AbA@b}}}}{{{h{c}}{h{e}}}Cd{}{}}0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000``{{{h{Ab{Nh{}{{G`{c}}}}}}{h{K`}}c}{{f{c}}}{}}{{{h{Gj}}{h{Fd}}}{{Ff{{h{K`}}}}}}{{{h{Ob}}Md}{{Ff{{h{K`}}}}}}{{{h{Gj}}Md}{{Ff{{h{K`}}}}}}{{{h{Ob}}{h{Fd}}}{{Ff{{h{K`}}}}}}33``{{{h{Gj}}{h{Fd}}}{{Ff{Md}}}}`{{{h{Ob}}}{{h{{Mb{K`}}}}}}{{{h{On}}}{{h{{Mb{ABd}}}}}}{{{h{Ol}}}{{h{{Mb{Nf}}}}}}`{{{h{AAf}}}AAl}{{{h{A@d}}}AAl}{{{h{AbA@b}}AAl}{{h{AbA@b}}}}{{{h{AAf}}}{{h{Fd}}}}{{{h{A@d}}}{{h{Fd}}}}{{{h{AbA@b}}n}{{h{AbA@b}}}}{{{h{AAf}}}Lf}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{cJf{{F`{}{{En{Oh}}}}}}{cOj{{F`{}{{En{Oh}}}}}}{cJf{{Fh{AF`}}}}{cOj{{Fh{AF`}}}}{{{h{Mj}}{h{AbCh}}}Cj}{{{h{Nn}}{h{AbCh}}}Cj}0{{{h{O`}}{h{AbCh}}}Cj}0{{{h{Ob}}{h{AbCh}}}Cj}0{{{h{Jh}}{h{AbCh}}}Cj}0{{{h{A@n}}{h{AbCh}}}Cj}{{{h{AA`}}{h{AbCh}}}Cj}{{{h{AAb}}{h{AbCh}}}Cj}{{{h{AAd}}{h{AbCh}}}Cj}{{{h{AAf}}{h{AbCh}}}Cj}{{{h{AAh}}{h{AbCh}}}Cj}{{{h{A@d}}{h{AbCh}}}Cj}{{{h{A@f}}{h{AbCh}}}Cj}0{{{h{AAj}}{h{AbCh}}}Cj}{{{h{AAl}}{h{AbCh}}}Cj}0{{{h{AAn}}{h{AbCh}}}Cj}{{{h{Ml}}{h{AbCh}}}Cj}{{{h{AB`}}{h{AbCh}}}Cj}0{{{h{ABb}}{h{AbCh}}}Cj}{{{h{ABd}}{h{AbCh}}}Cj}{{{h{On}}{h{AbCh}}}Cj}{{{h{Nf}}{h{AbCh}}}Cj}{{{h{Ol}}{h{AbCh}}}Cj}{{{h{N`}}{h{AbCh}}}Cj}{{{h{Nd}}{h{AbCh}}}Cj}{{{h{Gj}}{h{AbCh}}}Cj}0{{{h{A@h}}{h{AbCh}}}Cj}{{{h{ABf}}{h{AbCh}}}Cj}{{{h{ABh}}{h{AbCh}}}Cj}{{{h{Nl}}{h{AbCh}}}Cj}{{{h{ABj}}{h{AbCh}}}Cj}{{{h{ABl}}{h{AbCh}}}Cj}{{{h{ABn}}{h{AbCh}}}Cj}0{{{h{AC`}}{h{AbCh}}}Cj}0{{{h{ACb}}{h{AbCh}}}Cj}0{{{h{AFb}}{h{AbCh}}}Cj}0{{{h{A@l}}{h{AbCh}}}Cj}{{{h{Nj}}{h{AbCh}}}Cj}{{{h{ACd}}{h{AbCh}}}Cj}0{{{h{ACf}}{h{AbCh}}}Cj}{{{h{ACh}}{h{AbCh}}}Cj}{{{h{Nb}}{h{AbCh}}}Cj}0{{{h{ACj}}{h{AbCh}}}Cj}{{{h{Jf}}{h{AbCh}}}Cj}0{{{h{ACl}}{h{AbCh}}}Cj}{{{h{Oj}}{h{AbCh}}}Cj}{{{h{ACn}}{h{AbCh}}}Cj}{{{h{AEj}}{h{AbCh}}}Cj}{{{h{A@`}}{h{AbCh}}}Cj}{{{h{AD`}}{h{AbCh}}}Cj}{{{h{ADb}}{h{AbCh}}}Cj}0{{{h{ADd}}{h{AbCh}}}Cj}{{{h{ADf}}{h{AbCh}}}Cj}{{{h{ADh}}{h{AbCh}}}Cj}{{{h{ADj}}{h{AbCh}}}Cj}{{{h{Nj}}}ACd}{{{h{A@`}}}ADb}{cc{}}0000{AA`Nn}1{ObNn}{O`Nn}{A@nNn}44444444444{nA@f}5{AFdA@f}666666666{ABdNf}7{OnOl}8888888888888{AFdAFb}{nAFb}:::::::{JfACj};;{{{Jn{{Af{Oj{Ff{Oj}}}}}}}ACl}<<{JfOj}========{ADjADh}>{cACl{{F`{}{{En{{Af{Oj{Ff{Oj}}}}}}}}}}{cACn{{F`{}{{En{{Ff{Oj}}}}}}}}{{{h{Fd}}}{{f{AAl}}}}{{{h{Fd}}}{{f{AB`}}}}{{{h{Fd}}}{{f{Nb}}}}{Bj{{f{d}}}}{Cn{{f{Of}}}}{{{h{ACl}}{h{Oj}}}{{Ff{{h{{Ff{Oj}}}}}}}}{{{h{ACl}}{h{ACl}}}Cd}{{{h{O`}}{h{Abc}}}AdFb}{{{h{ACd}}{h{Abc}}}AdFb}{{{h{ACj}}{h{Abc}}}AdFb}{{{h{Jf}}{h{Abc}}}AdFb}{{{h{ACl}}{h{Abc}}}AdFb}{{{h{Oj}}{h{Abc}}}AdFb}{{{h{ACn}}{h{Abc}}}AdFb}{{{h{Gj}}}Md}{{{h{Nj}}}{{h{{Mb{ACh}}}}}}{{{h{A@`}}}{{h{{Mb{AD`}}}}}}`{{{h{Gj}}}{{`{{Mn{}{{En{Md}}}}}}}}{{{h{Ob}}Bl}{{h{c}}}{}}{{{h{ACn}}Bl}{{h{c}}}{}}{{{h{Ob}}}{{f{{Bb{MdK`}}}}}}{{{h{Ob}}}{{f{{Bb{MdMd}}}}}}{{}Bl}000000000000000000000000000000000000000000000000000000000000`{{{h{AbACl}}Oj{Ff{Oj}}}{{Ff{{Ff{Oj}}}}}}{cJf{{Fh{Md}}}}{cOj{{Fh{Md}}}}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{Oj{{Bf{AFf}}}}{GjA@h}2{AClc{}}{ACnc{}}{ADfc{}}{AAb{{Af{{A`{AEn}}AAd}}}}{ABdNf}{{{h{AAf}}}Cd}{{{h{ACl}}}Cd}{{{h{ADf}}}Cd}{{{h{Nn}}}Cd}{{{h{ACj}}}Cd}{{{h{Jf}}}Cd}2{{{h{ACn}}Bl}Cd}33{{{h{On}}}Cd}{{{h{A@l}}}Cd}{{{h{ACn}}}{{`{{Mn{}{{En{{Ff{{h{Oj}}}}}}}}}}}}{{{h{ADf}}}{{`{{Mn{}{{En{{h{ADh}}}}}}}}}}`{{{h{A@d}}}{{h{{Mb{Oh}}}}}}{{{h{AbA@b}}{A`{Oh}}}{{h{AbA@b}}}}`{{{h{Nj}}}Mh}0{{{h{Nj}}}{{f{{AFj{AFh}}}}}}{{{h{ACl}}}Bl}{{{h{ADf}}}Bl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{A@n}}c}{{f{c}}}{}}{{MdNnCd}Jh}{{{h{Jf}}}{{h{ACj}}}}{{{h{Ml}}{h{Kh}}}{{f{AAb}}}}{{{h{Nl}}{h{Kh}}{h{Nj}}}{{f{AAn}}}}{{{h{Nj}}}{{h{Fd}}}}{{{h{A@`}}}{{h{Fd}}}}{cJf{{Fh{Mh}}}}{cOj{{Fh{Mh}}}}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}`{{{h{Nl}}}{{h{Fd}}}}`{{{h{Ab{Nh{}{{G`{c}}}}}}{h{AA`}}cc}{{f{c}}}{}}{{MdNn}Jh}<`````{{{h{Gj}}Md}{{Ff{{h{Fd}}}}}}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}{{L`Mh{A`{Oh}}}AFl}{Njd}{A@`Of}{{{A`{K`}}}Ob}{{MdcNnCd}JhEl}{K`A@n}{{K`K`}AA`}{{AAd{A`{AAf}}}AAb}{{}N`}{{{h{Gj}}}Nd}{{MhABl}ABj}{{}ACl}{{ADnMh}AD`}{{Ol{h{Gj}}}{{f{Nd}}}}{{{h{AbAFn}}}{{Ff{c}}}{}}`{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{MdcNn}JhEl}``{{{h{Nl}}}{{Ff{Mh}}}}{{{h{{Bb{n{A`{Oh}}}}}}}{{f{AAd}}}}{{{h{{Mb{Oh}}}}}{{f{AAb}}}}{{{h{{Mb{Oh}}}}ACdc}{{f{AAn}}}{{AGb{Md}{{AG`{{f{{Ff{Ob}}}}}}}}}}{{{h{ACd}}{h{ACd}}}{{Ff{An}}}}{{{h{Jf}}{h{Jf}}}{{Ff{An}}}}{{{h{ADb}}{h{ADb}}}{{Ff{An}}}}{{{h{A@d}}}{{h{ACn}}}}{{{h{AbA@b}}ACn}{{h{AbA@b}}}}{{{h{Nj}}Md}{{Ff{{h{AEf}}}}}}`{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEf}}}}}}}}}}{{{h{On}}{h{Gj}}}{{f{Ob}}}}`{{{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{O`}}}{{f{c}}}{}}{{{h{Nb}}{h{Fd}}{h{Il}}}{{f{{Ff{Hj}}}}}}{{{h{Nj}}}{{h{{Bb{nn}}}}}}{{{h{A@`}}}{{h{{Bb{nn}}}}}}{{{h{Gj}}cCd}{{f{Nn}}}{{F`{}{{En{Md}}}}}}{{{h{A@d}}}Lf}{{{h{AbA@b}}Lf}{{h{AbA@b}}}}{{{h{ADd}}}{{h{ADf}}}}{{MdcNn}JhEl}`{{{h{Nb}}{h{Nn}}}{{f{Nn}}}}`{{{h{Nb}}{h{Nb}}}Cd}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Gj}}c}{{f{c}}}{}}{{{h{Nl}}{h{Nj}}}{{f{I`}}}}{{{h{ADd}}{h{A@`}}}{{f{I`}}}}{{{h{Nj}}AGd}{{Ff{{h{I`}}}}}}{{{h{A@`}}AGd}{{Ff{{h{I`}}}}}}{{{h{Gj}}}AGd}{{{h{Nl}}}{{Ff{AGd}}}}{{{h{ADd}}}AGd}{{{h{Nj}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{A@`}}}{{`{{Mn{}{{En{{h{I`}}}}}}}}}}{{{h{AAf}}}{{Ff{Mh}}}}{{{h{Nl}}}Mh}`{{{h{Nn}}c}BnFj}{{{h{O`}}c}BnFj}0{{{h{Ob}}c}BnFj}{{{h{Jh}}c}BnFj}{{{h{ABd}}c}BnFj}{{{h{On}}c}BnFj}{{{h{Nf}}c}BnFj}{{{h{Ol}}c}BnFj}{{{h{Gj}}c}BnFj}{{{h{ABf}}c}BnFj}{{{h{ABh}}c}BnFj}{{{h{Nl}}c}BnFj}{{{h{ABj}}c}BnFj}{{{h{ABl}}c}BnFj}{{{h{ABn}}c}BnFj}{{{h{AC`}}c}BnFj}{{{h{ACb}}c}BnFj}{{{h{A@l}}c}BnFj}{{{h{Nj}}c}BnFj}{{{h{ACd}}c}BnFj}{{{h{ACf}}c}BnFj}{{{h{ACh}}c}BnFj}{{{h{Nb}}c}BnFj}{{{h{Jf}}c}BnFj}{{{h{AEj}}c}BnFj}{{{h{A@`}}c}BnFj}{{{h{AD`}}c}BnFj}{{{h{ADb}}c}BnFj}{{{h{ADd}}c}BnFj}{{{h{ADf}}c}BnFj}{{{h{ADh}}c}BnFj}{{{h{ADj}}c}BnFj}{{{h{Nj}}Mh}{{Ff{{h{Mf}}}}}}{{{h{Nl}}}Mh}``{{{h{Nj}}}{{`{{Mn{}{{En{{h{Mf}}}}}}}}}}{{{h{Nj}}Mh}{{Ff{{h{AEh}}}}}}{{{h{A@d}}}{{Ff{Md}}}}{{{h{AbA@b}}Md}{{h{AbA@b}}}}{{{h{Nj}}}{{`{{Mn{}{{En{{h{AEh}}}}}}}}}}```{{{h{On}}}Md}{{{h{Ol}}}{{Ff{Md}}}}{{{h{A@d}}}{{h{{Mb{Mh}}}}}}{{{h{AbA@b}}{A`{Mh}}}{{h{AbA@b}}}}`{cJfEl}{cOjEl}{{{h{Ab{Nh{}{{G`{c}}}}}}{h{Ob}}{A`{c}}}{{f{c}}}{}}{{{h{Nl}}}{{h{ABh}}}}{{{h{ADd}}}{{h{{Bb{nn}}}}}}{MhOj}{{AE`AE`AE`AE`}{{f{Jf}}}}{{AE`AE`AE`AE`}{{f{Oj}}}}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{Mh{{f{Jf}}}}{{{h{Nl}}}{{AFj{AFh}}}}{ACh{{f{{AFj{AFh}}}}}}7{AD`{{f{{AFj{AFh}}}}}}{{{h{ADd}}}{{f{{AFj{AFh}}}}}}{AGfJf}{{{AFj{c}}}OjAGh}87{MhJf}{{{h{ACh}}}Mh}{{{h{AD`}}}Mh}{{{h{ADd}}}Mh}``3?{{{AFj{c}}}JfAGh}5=<44{{Jf{h{Nn}}}{{f{Jf}}}}{{{h{Jf}}}AGj}{{{h{c}}}e{}{}}0000000000000000000000000000000000000000000000000{{{h{c}}}n{}}000000000000000{Nn{{Ff{Ob}}}}{OnOl}```{c{{Bn{e}}}{}{}}0000000000000{Md{{f{AAh}}}}11111{Md{{f{AAj}}}}222{Md{{Bn{AB`c}}}{}}333333333{{{h{Gh}}}{{f{Gj}}}}44444444444444444444444{{Oj{h{Nn}}}{{Bn{AEjCf}}}}5555555{{{h{{Mb{Oh}}}}O`}{{f{Jf}}}}{{AGl{h{Nn}}}{{f{{Ff{Oj}}}}}}777777777777777777777777777777777777777777777777777777{{AEj{h{Nn}}}{{Bn{{Ff{Oj}}Cf}}}}8888888{{Oj{h{Nn}}}{{f{AGl}}}}{{{h{c}}}Fl{}}000000000000000000000000000000000000000000000000000000000000{{}A@l}`{{{h{A@d}}}{{h{{Bb{MdJf}}}}}}{{{h{AbA@b}}{Bb{MdJf}}}{{h{AbA@b}}}}{{{h{Nj}}}Od}{OdJf}{OdOj}{{{h{A@`}}}Od}{c{{f{Jf}}}{{Kl{Fd}}}}{c{{f{Oj}}}{{Kl{Fd}}}}{{L`MhMh}Mj}{{L`MhMhMh}Mj}{{{h{A@d}}}{{h{{Bb{MdLf}}}}}}{{{h{AbA@b}}{Bb{MdLf}}}{{h{AbA@b}}}}`{{{h{A@`}}ADn}{{Ff{{h{ADl}}}}}}{{{h{AD`}}}ADn}{{{h{ADd}}}ADn}{{{h{A@`}}}{{`{{Mn{}{{En{{h{ADl}}}}}}}}}}{{{h{Gj}}{h{Abc}}}fNh}{{{h{Ob}}{h{Abc}}}fNh}{{{h{Nn}}{h{Abc}}}fNh}{ce{}{}}000000000000000000000000000000000000000000000000000000000000{{A@h{AGn{nMd}}}A@h}{{Jhc}JhEl}{{A@hc}A@h{{F`{}{{En{K`}}}}}}{{{h{AbA@j}}{A`{ACb}}}{{h{AbA@j}}}}{{A@hc}A@h{{F`{}{{En{Md}}}}}}{{JhOj}Jh}{{NdMd}Nd}{{{h{AbA@j}}Mh}{{h{AbA@j}}}}{{A@hMd}A@h}{{{h{AbA@j}}c}{{h{AbA@j}}}{}}{{N`Md}N`}45{{AFlAAb}{{f{Ml}}}}``````````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{AH`{{f{AHb}}}}{{}AH`}{{AH`Lf}AH`}{{{h{AHb}}}AHb}{{{h{AHd}}}AHd}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{AH`AH`}{BlAd}00{{AH`Kh}AH`}{{{h{AHb}}}{{h{Kh}}}}{{{h{AHb}}{h{AbCh}}}Cj}{{{h{AHd}}{h{AbCh}}}Cj}{cc{}}00{{NjAlKh}{{f{AHd}}}}{{{h{Fd}}AlKh}{{f{AHd}}}}{{AH`Al}AH`}{{{h{AHb}}}{{h{Al}}}}{{}Bl}00{ce{}{}}00{AHdAHb}{{AH`c}AH`{{Fh{AHf}}}}{{{h{AHb}}}{{h{Nj}}}}{{{h{AHd}}}AHf}{{AH`c}AH`{{Fh{n}}}}{{{h{AHb}}}{{Ff{{h{Fd}}}}}}{{{h{AHb}}}AHf}{{{h{AHb}}}Gl}{{{h{AHd}}}Gl}{{AH`Cd}AH`}{{{h{AHb}}}Cd}{{{h{AHb}}}Ll}{{{h{AHd}}}Ll}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00{ce{}{}}00``{AHh{{f{AHj}}}}{{AHh{h{Fd}}AC`}{{f{AHh}}}}{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{AHj{h{c}}}{{f{AHb}}}B`}{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}05{BlAd}0{cc{}}0{{}Bl}0::{{{h{AHb}}}AHj}{{AHj{A`{n}}}{{f{AHj}}}}{AHjAHh}{{AHj{Bb{nn}}}{{f{AHj}}}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}0{{AHjACd}{{f{AHj}}}}{ce{}{}}0``{{{h{Nb}}}{{f{AHl}}}}{{{h{AHn}}AI`}{{f{AI`}}}}{{{h{AHn}}{h{Jf}}}{{f{{Ff{Jf}}}}}}{{{h{AHn}}{h{Jf}}}{{f{Jf}}}}``````{{{AIf{}{{AIb{c}}{AId{i}}}}i}{{Bh{{Bf{Bd}}}}}{{AIh{eg}}}{}{}{}}{{{h{AbAIh}}}{{Bh{{Bf{Bd}}}}}}{{{h{AIj}}}n}{{{h{AIj}}}Bl}0`{{{h{AbAIh}}c}{{Bh{{Bf{Bd}}}}}{}}````{{{h{c}}}{{h{e}}}{}{}}00{{{h{Abc}}}{{h{Abe}}}{}{}}00{{{AIl{c}}e}{{Bh{{Bf{Bd}}}}}AIn{}}{{{h{{AIl{c}}}}}{{AIl{c}}}{InAIn}}{{{h{c}}{h{Abe}}}Ad{}{}}{{{h{Ab{AJ`{c}}}}}{{Bh{{Bf{Bd}}}}}AIn}{{{h{{AJ`{c}}}}}nAIn}{{{h{{AJ`{c}}}}}BlAIn}0{Bl{{h{c}}}{}}00{Bl{{h{Abc}}}{}}00{BlAd}00{cc{}}00{{}Bl}00{ce{}{}}00{{{Ff{ACn}}}AJb}{c{{AIl{c}}}AIn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}00000{{{h{c}}}Fl{}}00555{{{h{Ab{AJ`{c}}}}AJd}{{Bh{{Bf{Bd}}}}}AIn}`````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{AIn{}{{AIb{c}}}}}{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{{AJh{e}}}{}}{{{AJj{ce}}}{{f{g}}}AJlAJn{}}{{{h{{AJj{ce}}}}}{{AJj{ce}}}{InAJl}{InAJn}}{{{h{c}}{h{Abe}}}Ad{}{}}{AJh{{`{{Bd{}{{AG`{{f{c}}}}}}AJf}}}{}}{AK`{{f{{A`{A@b}}}}}}{{{h{AK`}}}n}{{{h{AK`}}}Bl}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{}Bl}0{ce{}{}}0`{{AKbI`Khce}{{AJj{ce}}}AJlAJn}{{{h{c}}}e{}{}}{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}044{{{h{AbAJh}}{h{AJd}}}{{`{{Bd{}{{AG`{{f{Ad}}}}}}AJf}}}}{{{h{AbAK`}}{h{AJd}}}{{f{Ad}}}}````{{{h{c}}}{{h{e}}}{}{}}0{{{h{Abc}}}{{h{Abe}}}{}{}}0{{{h{AKd}}}AKd}{{{h{AKf}}}AKf}{{{h{c}}{h{Abe}}}Ad{}{}}0{Bl{{h{c}}}{}}0{Bl{{h{Abc}}}{}}0{BlAd}0{cc{}}0{{{h{AJn}}}n}{{{h{AKf}}}n}{{{h{AJl}}{h{Fd}}}n}{{{h{AKd}}{h{Fd}}}n}{{}Bl}0{ce{}{}}0{Nj{{f{AKd}}}}{{n{Ff{n}}AAl}AKf}{{{h{c}}}e{}{}}0{c{{Bn{e}}}{}{}}000{{{h{c}}}Fl{}}055","D":"HI`","p":[[6,"TableUpdate",0,2837],[5,"TableMetadataBuilder",832,2838],[8,"Result",0,2839],[1,"reference"],[10,"Error",2840],[5,"NamespaceIdent",0,2837],[5,"String",2841],[5,"Vec",2842],[0,"mut"],[1,"unit"],[1,"tuple"],[6,"ErrorKind",0,2839],[5,"Namespace",0,2837],[5,"TableIdent",0,2837],[6,"Ordering",2843],[10,"Catalog",0,2837],[5,"HashMap",2844],[10,"Future",2845],[5,"Box",2846],[5,"Pin",2847],[5,"TableCreation",0,2837],[1,"usize"],[6,"Result",2848],[10,"Deserializer",2849],[6,"TableRequirement",0,2837],[1,"bool"],[5,"Error",0,2839],[5,"Formatter",2850],[8,"Result",2850],[5,"TableCommit",0,2837],[5,"ViewCreation",0,2837],[5,"Error",2851],[5,"Error",2852],[6,"Error",2853],[6,"ParquetError",2854],[6,"ParseError",2855],[5,"ParseError",2856],[5,"Utf8Error",2857],[5,"TryFromIntError",2858],[5,"Error",2859],[5,"TryFromSliceError",2860],[5,"SendError",2861],[5,"Error",2862],[6,"Error",2863],[5,"Error",2864],[10,"ToString",2841],[17,"Item"],[10,"IntoIterator",2865],[10,"Hasher",2866],[1,"str"],[6,"Option",2867],[10,"Into",2868],[10,"Serializer",2869],[5,"TypeId",2870],[5,"Error",2871],[17,"T"],[17,"U"],[10,"ArrowSchemaVisitor",323,2872],[5,"Field",2873],[5,"Schema",2874],[5,"Schema",832,2875],[5,"ArrowReaderBuilder",323,2876],[5,"ArrowReader",323,2876],[6,"DataType",2877],[8,"FileScanTaskStream",765],[8,"ArrowRecordBatchStream",765],[5,"Fields",2878],[5,"BoundReference",383,2879],[6,"Predicate",383,2880],[17,"Bound"],[10,"Bind",383],[8,"SchemaRef",832,2875],[5,"Reference",383,2879],[5,"LogicalExpression",383,2880],[5,"UnaryExpression",383,2880],[5,"BinaryExpression",383,2880],[5,"SetExpression",383,2880],[6,"BoundPredicate",383,2880],[10,"Clone",2881],[6,"PredicateOperator",383],[10,"Deserialize",2849],[10,"PartialEq",2843],[5,"Datum",832,2882],[5,"NestedField",832,2883],[10,"Debug",2850],[10,"Display",2850],[1,"array"],[8,"NestedFieldRef",832,2883],[5,"Arc",2884],[10,"Serialize",2869],[5,"FileIOBuilder",651,2885],[5,"FileIO",651,2885],[10,"FileWrite",651,2885],[10,"AsRef",2868],[5,"InputFile",651,2885],[5,"OutputFile",651,2885],[5,"FileMetadata",651,2885],[10,"FileRead",651,2885],[1,"u64"],[5,"Range",2886],[5,"Bytes",2887],[5,"TableScanBuilder",765],[5,"TableScan",765],[5,"FileScanTask",765],[1,"slice"],[1,"i32"],[8,"SnapshotRef",832,2888],[1,"i64"],[5,"ManifestListWriter",832,2889],[5,"ManifestFile",832,2889],[10,"Iterator",2890],[5,"UnboundPartitionSpecBuilder",832,2891],[6,"Transform",832,2892],[5,"PartitionSpecBuilder",832,2891],[5,"UnboundPartitionField",832,2891],[10,"SchemaVisitor",832,2875],[5,"TableMetadata",832,2838],[5,"Snapshot",832,2888],[6,"Type",832,2883],[6,"PrimitiveType",832,2883],[5,"StructType",832,2883],[5,"Uuid",2893],[5,"ViewMetadataBuilder",832,2894],[1,"u8"],[6,"Literal",832,2882],[5,"UnboundPartitionSpec",832,2891],[5,"PartitionSpec",832,2891],[5,"ViewMetadata",832,2894],[5,"DataFileBuilder",832,2895],[5,"DataFile",832,2895],[6,"DataFileBuilderError",832,2895],[5,"SchemaBuilder",832,2875],[5,"SortOrderBuilder",832,2896],[5,"SortOrder",832,2896],[5,"ListType",832,2883],[5,"MapType",832,2883],[5,"Manifest",832,2895],[5,"ManifestMetadata",832,2895],[5,"ManifestEntry",832,2895],[6,"ManifestStatus",832,2895],[6,"DataContentType",832,2895],[6,"DataFileFormat",832,2895],[5,"ManifestList",832,2889],[6,"ManifestContentType",832,2889],[5,"FieldSummary",832,2889],[5,"PartitionField",832,2891],[6,"Operation",832,2888],[5,"Summary",832,2888],[5,"SnapshotReference",832,2888],[6,"SnapshotRetention",832,2888],[6,"SortDirection",832,2896],[6,"NullOrder",832,2896],[5,"SortField",832,2896],[6,"FormatVersion",832,2838],[5,"MetadataLog",832,2838],[5,"SnapshotLog",832,2838],[6,"PrimitiveLiteral",832,2882],[5,"Map",832,2882],[5,"Struct",832,2882],[5,"ViewVersionLog",832,2894],[6,"ViewFormatVersion",832,2894],[5,"ViewVersion",832,2897],[5,"ViewRepresentations",832,2897],[6,"ViewRepresentation",832,2897],[5,"SqlViewRepresentation",832,2897],[8,"ViewVersionRef",832,2897],[8,"ViewVersionId",832,2897],[1,"u32"],[5,"Decimal",2898],[1,"i128"],[8,"PartitionSpecRef",832,2891],[8,"SortOrderRef",832,2896],[5,"RawLiteral",832,2899],[1,"f64"],[8,"ManifestEntryRef",832,2895],[1,"f32"],[6,"SortOrderBuilderError",832,2896],[5,"UninitializedFieldError",2900],[10,"Any",2870],[5,"Utc",2901],[5,"DateTime",2902],[5,"ManifestWriter",832,2895],[5,"StructValueIntoIter",832,2882],[17,"Output"],[10,"Fn",2903],[8,"SchemaId",832,2875],[5,"NaiveDateTime",2904],[10,"TimeZone",2905],[5,"ByteBuf",2906],[6,"Value",2907],[5,"BiHashMap",2908],[5,"TableBuilder",2579],[5,"Table",2579],[5,"StaticTable",2579],[8,"TableMetadataRef",832,2838],[5,"ReplaceSortOrderAction",2649],[5,"Transaction",2649],[8,"BoxedTransformFunction",2684],[10,"TransformFunction",2684],[8,"ArrayRef",2909],[17,"R"],[17,"C"],[10,"IcebergWriterBuilder",2690],[10,"IcebergWriter",2690],[10,"CurrentFileStatus",2690],[5,"DataFileWriterBuilder",2704],[10,"FileWriterBuilder",2754],[5,"DataFileWriter",2704],[5,"DataFileWriterConfig",2704],[5,"RecordBatch",2910],[10,"Send",2911],[10,"FileWriter",2754],[5,"ParquetWriterBuilder",2754,2912],[10,"LocationGenerator",2797],[10,"FileNameGenerator",2797],[5,"ParquetWriter",2754,2912],[5,"WriterProperties",2913],[5,"DefaultLocationGenerator",2797],[5,"DefaultFileNameGenerator",2797],[15,"CurrentSchemaIdMatch",298],[15,"DefaultSortOrderIdMatch",298],[15,"DefaultSpecIdMatch",298],[15,"LastAssignedFieldIdMatch",298],[15,"LastAssignedPartitionIdMatch",298],[15,"RefSnapshotIdMatch",298],[15,"UuidMatch",298],[15,"UpgradeFormatVersion",306],[15,"AddSchema",306],[15,"SetLocation",306],[15,"SetSnapshotRef",306],[15,"RemoveSnapshotRef",306],[15,"RemoveProperties",306],[15,"SetCurrentSchema",306],[15,"AddSnapshot",306],[15,"RemoveSnapshots",306],[15,"AddSortOrder",306],[15,"SetDefaultSortOrder",306],[15,"AddSpec",306],[15,"SetDefaultSpec",306],[15,"SetProperties",306],[15,"AssignUuid",306],[15,"Decimal",2573],[15,"Branch",2575],[15,"Tag",2575]],"r":[[5,2837],[11,2839],[12,2839],[16,2837],[17,2837],[24,2839],[31,2837],[32,2837],[33,2837],[34,2837],[35,2837],[39,2837],[323,2876],[324,2876],[325,2872],[336,2872],[369,2872],[391,2880],[394,2880],[395,2879],[396,2879],[405,2880],[415,2880],[417,2879],[420,2880],[422,2879],[425,2880],[651,2885],[652,2885],[653,2885],[654,2885],[655,2885],[656,2914],[657,2914],[658,2914],[659,2914],[660,2885],[661,2885],[662,2915],[663,2915],[664,2915],[665,2915],[666,2915],[667,2915],[668,2915],[669,2915],[670,2915],[671,2915],[672,2915],[673,2915],[844,2895],[845,2895],[846,2895],[847,2895],[848,2895],[850,2882],[861,2889],[866,2838],[875,2883],[876,2882],[879,2895],[880,2889],[881,2895],[882,2895],[883,2889],[884,2889],[885,2889],[886,2895],[887,2895],[888,2895],[889,2882],[892,2883],[893,2838],[895,2883],[896,2883],[897,2896],[898,2888],[902,2891],[903,2891],[904,2891],[905,2891],[909,2882],[910,2883],[911,2899],[913,2875],[914,2875],[915,2875],[916,2875],[917,2875],[918,2888],[919,2838],[920,2888],[921,2888],[922,2888],[923,2896],[924,2896],[925,2896],[926,2896],[927,2896],[928,2896],[930,2897],[933,2882],[936,2883],[937,2882],[938,2888],[940,2838],[941,2838],[942,2838],[949,2892],[951,2883],[953,2889],[954,2891],[955,2891],[956,2891],[957,2891],[967,2894],[968,2894],[969,2894],[970,2894],[971,2897],[972,2897],[973,2897],[974,2897],[975,2894],[976,2897],[1878,2875],[1879,2875],[2104,2875],[2494,2875],[2495,2875],[2496,2875],[2756,2912],[2757,2912]],"b":[[135,"impl-Debug-for-Error"],[136,"impl-Display-for-Error"],[137,"impl-Display-for-ErrorKind"],[138,"impl-Debug-for-ErrorKind"],[147,"impl-From%3CError%3E-for-Error"],[148,"impl-From%3CError%3E-for-Error"],[149,"impl-From%3CError%3E-for-Error"],[150,"impl-From%3CParquetError%3E-for-Error"],[151,"impl-From%3CParseError%3E-for-Error"],[153,"impl-From%3CParseError%3E-for-Error"],[154,"impl-From%3CUtf8Error%3E-for-Error"],[155,"impl-From%3CTryFromIntError%3E-for-Error"],[156,"impl-From%3CError%3E-for-Error"],[157,"impl-From%3CTryFromSliceError%3E-for-Error"],[158,"impl-From%3CSendError%3E-for-Error"],[159,"impl-From%3CError%3E-for-Error"],[160,"impl-From%3CError%3E-for-Error"],[161,"impl-From%3CError%3E-for-Error"],[520,"impl-Debug-for-Reference"],[521,"impl-Display-for-Reference"],[522,"impl-Display-for-BoundReference"],[523,"impl-Debug-for-BoundReference"],[525,"impl-Debug-for-UnaryExpression%3CT%3E"],[526,"impl-Display-for-UnaryExpression%3CT%3E"],[527,"impl-Debug-for-BinaryExpression%3CT%3E"],[528,"impl-Display-for-BinaryExpression%3CT%3E"],[529,"impl-Display-for-SetExpression%3CT%3E"],[530,"impl-Debug-for-SetExpression%3CT%3E"],[531,"impl-Display-for-Predicate"],[532,"impl-Debug-for-Predicate"],[533,"impl-Debug-for-BoundPredicate"],[534,"impl-Display-for-BoundPredicate"],[535,"impl-Display-for-PredicateOperator"],[536,"impl-Debug-for-PredicateOperator"],[1433,"impl-Deserialize%3C\'de%3E-for-PrimitiveType"],[1434,"impl-PrimitiveType"],[1708,"impl-Debug-for-Type"],[1709,"impl-Display-for-Type"],[1710,"impl-Display-for-PrimitiveType"],[1711,"impl-Debug-for-PrimitiveType"],[1712,"impl-Debug-for-StructType"],[1713,"impl-Display-for-StructType"],[1714,"impl-Debug-for-NestedField"],[1715,"impl-Display-for-NestedField"],[1723,"impl-Display-for-DataFileBuilderError"],[1724,"impl-Debug-for-DataFileBuilderError"],[1726,"impl-Debug-for-DataFileFormat"],[1727,"impl-Display-for-DataFileFormat"],[1730,"impl-Debug-for-ManifestContentType"],[1731,"impl-Display-for-ManifestContentType"],[1739,"impl-Display-for-Schema"],[1740,"impl-Debug-for-Schema"],[1747,"impl-Debug-for-SortDirection"],[1748,"impl-Display-for-SortDirection"],[1749,"impl-Display-for-NullOrder"],[1750,"impl-Debug-for-NullOrder"],[1751,"impl-Display-for-SortField"],[1752,"impl-Debug-for-SortField"],[1753,"impl-Debug-for-SortOrderBuilderError"],[1754,"impl-Display-for-SortOrderBuilderError"],[1757,"impl-Debug-for-FormatVersion"],[1758,"impl-Display-for-FormatVersion"],[1761,"impl-Display-for-Transform"],[1762,"impl-Debug-for-Transform"],[1764,"impl-Debug-for-Datum"],[1765,"impl-Display-for-Datum"],[1772,"impl-Debug-for-ViewFormatVersion"],[1773,"impl-Display-for-ViewFormatVersion"],[1785,"impl-From%3CMapType%3E-for-Type"],[1787,"impl-From%3CStructType%3E-for-Type"],[1788,"impl-From%3CPrimitiveType%3E-for-Type"],[1789,"impl-From%3CListType%3E-for-Type"],[1801,"impl-From%3CString%3E-for-DataFileBuilderError"],[1803,"impl-From%3CUninitializedFieldError%3E-for-DataFileBuilderError"],[1829,"impl-From%3CUninitializedFieldError%3E-for-SortOrderBuilderError"],[1830,"impl-From%3CString%3E-for-SortOrderBuilderError"],[2127,"impl-Serialize-for-PrimitiveType"],[2128,"impl-PrimitiveType"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAM0GZAArABUARAAKAFMAIgB5AA0AiAAQAJoACACwAAEAswAJAN0AAADnAAMA7AAAAPMABgD9AB0AHQEJAFoBAwBfAQcAaQEBAHQBCACOAQcAmQEEAKYBAACuAVYABgIBAAkCEAAlAggATQIIAFcCNACjAgkArgIBALICDgDDAgMAzQIEAOQCFAADAwUACgMBAA4DCwAdAwIAKQMAAC0DDADnAwEA/AN5AIkEYwDuBAEADwUJAB8FmgC/BTwAAAYvADIGWwCsBkYA+gYAAPwGAgAKBwAADAcAABYHAAAYBwAAJgcBAC8HAAAyBwAANQcAAD4HAABABwQASQcGAFUHAQBZBzwA2QcDAB4IAAAqCAIATwggAKUIQQDsCDkAJwkGADAJNQBnCQYAbwk8AMIJPAAXCgUAIAoJACsKAgAwCgEAOQoCAEwKDQBeCgMAYwoDAGgKAQBsCgEAdAoFAHsKAQCUChUArQoCALUKDQDICgMAzQoCANEKCQDdCgEA4woIAO0KAADyCg0AAwsAAAULAgAMCwkA"}],\
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","into_shared","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip","with_catalog_id"],"q":[[0,"iceberg_catalog_glue"],[52,"iceberg_catalog_glue::catalog"],[53,"iceberg::catalog"],[54,"alloc::string"],[55,"std::collections::hash::map"],[56,"core::future::future"],[57,"alloc::boxed"],[58,"core::pin"],[59,"iceberg::io::file_io"],[60,"core::fmt"],[61,"core::option"],[62,"iceberg::error"],[63,"core::result"],[64,"core::any"],[65,"iceberg_catalog_glue::utils"]],"i":[0,0,0,0,0,0,0,5,18,5,18,18,5,5,5,18,5,18,5,18,5,5,5,5,18,5,18,5,5,18,5,18,5,18,5,5,5,5,5,5,5,5,18,5,18,5,18,5,5,5,18,0],"f":"```````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}0{Aj{{b{dc}}}{}}0{Ajf}0{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}An}{{{b{j}}{b{dB`}}}Bb}{{{b{Bd}}{b{dB`}}}Bb}{cc{}}05{{}Aj}0{ce{}{}}000{{{b{j}}{Bf{{b{l}}}}}{{Af{{Ad{Ab}}}}}}878{Bd{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}9{c{{Bj{e}}}{}{}}000{{{b{c}}}Bl{}}0{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Bn}{{Af{{Ad{Ab}}}}}}77`","D":"Ch","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"GlueCatalog",0,52],[5,"NamespaceIdent",53],[5,"String",54],[5,"HashMap",55],[10,"Future",56],[5,"Box",57],[5,"Pin",58],[5,"TableCreation",53],[1,"usize"],[5,"TableIdent",53],[5,"FileIO",59],[5,"Formatter",60],[8,"Result",60],[5,"GlueCatalogConfig",0,52],[6,"Option",61],[8,"Result",62],[6,"Result",63],[5,"TypeId",64],[5,"TableCommit",53]],"r":[[0,65],[1,65],[2,65],[3,65],[4,65],[5,52],[6,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABgABwAIAAMADwAFABgAAQAdAAEAIQABACoABQAxAAIA"}],\
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_hms"],[61,"iceberg_catalog_hms::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"iceberg::io::file_io"],[69,"core::fmt"],[70,"core::option"],[71,"iceberg::error"],[72,"core::result"],[73,"core::any"]],"i":[13,13,0,0,0,5,13,19,5,13,19,19,5,5,13,5,13,19,5,13,19,5,13,19,5,5,5,5,13,19,5,13,19,5,5,13,19,5,13,19,5,5,5,5,5,5,5,5,13,19,5,13,19,5,13,19,5,5,5,13,19],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{{}Aj}{Al{{b{c}}}{}}00{Al{{b{dc}}}{}}00{Alf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{An}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}}B`}{{{b{j}}{b{dBb}}}Bd}{{{b{Aj}}{b{dBb}}}Bd}{{{b{Bf}}{b{dBb}}}Bd}{cc{}}006{{}Al}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bf{{Bj{j}}}}{{{b{j}}{b{An}}{b{An}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Cf","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"HmsCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[6,"HmsThriftTransport",0,61],[1,"usize"],[5,"TableIdent",62],[5,"FileIO",68],[5,"Formatter",69],[8,"Result",69],[5,"HmsCatalogConfig",0,61],[6,"Option",70],[8,"Result",71],[6,"Result",72],[5,"TypeId",73],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACIABgAGAAUADwAJABwAAgAjAAIAMAAIADoAAwA="}],\
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"iceberg::catalog"],[30,"alloc::string"],[31,"std::collections::hash::map"],[32,"core::future::future"],[33,"alloc::boxed"],[34,"core::pin"],[35,"core::fmt"],[36,"core::option"],[37,"iceberg::io::file_io"],[38,"core::result"],[39,"core::any"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}{b{h}}{l{jj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{h}}Ad}{{Ab{{A`{n}}}}}}{Af{{b{c}}}{}}{Af{{b{dc}}}{}}{AfAh}{{{b{f}}{b{h}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{Aj}}}{{Ab{{A`{n}}}}}}{{{b{f}}{b{dAl}}}An}{cc{}}3{{}Af}{ce{}{}}{{{b{f}}{B`{{b{h}}}}}{{Ab{{A`{n}}}}}}656{{Bb{B`{j}}}f}{{{b{f}}{b{Aj}}{b{Aj}}}{{Ab{{A`{n}}}}}}7{c{{Bd{e}}}{}{}}0{{{b{c}}}Bf{}}?{{{b{f}}Bh}{{Ab{{A`{n}}}}}}6","D":"Bd","p":[[1,"reference"],[0,"mut"],[5,"MemoryCatalog",0,28],[5,"NamespaceIdent",29],[5,"String",30],[5,"HashMap",31],[10,"Future",32],[5,"Box",33],[5,"Pin",34],[5,"TableCreation",29],[1,"usize"],[1,"unit"],[5,"TableIdent",29],[5,"Formatter",35],[8,"Result",35],[6,"Option",36],[5,"FileIO",37],[6,"Result",38],[5,"TypeId",39],[5,"TableCommit",29]],"r":[[0,28]],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAAAIAAwAGAAcACAALAA4AFwAYABkAHAA="}],\
["iceberg_catalog_rest",{"t":"FFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["RestCatalog","RestCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","clone","clone_into","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","fmt","fmt","from","from","get_namespace","init","init","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","update_namespace","update_table","vzip","vzip"],"q":[[0,"iceberg_catalog_rest"],[46,"iceberg_catalog_rest::catalog"],[47,"iceberg::catalog"],[48,"alloc::string"],[49,"std::collections::hash::map"],[50,"core::future::future"],[51,"alloc::boxed"],[52,"core::pin"],[53,"core::fmt"],[54,"core::option"],[55,"core::result"],[56,"core::any"]],"i":[0,0,5,6,5,6,5,5,5,6,6,5,6,5,6,5,6,6,6,5,6,5,6,6,5,6,5,6,6,6,6,6,6,6,6,5,5,6,5,6,5,6,6,6,5,6],"f":"``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}{{`{{h{fff}}}}}}{{{b{j}}}j}{{{b{c}}{b{de}}}f{}{}}{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{n}}Aj}{{Ah{{Af{Ad}}}}}}{Al{{b{c}}}{}}0{Al{{b{dc}}}{}}0{Alf}0{{{b{l}}{b{n}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}{b{An}}}{{Ah{{Af{Ad}}}}}}{{{b{j}}{b{dB`}}}Bb}{{{b{l}}{b{dB`}}}Bb}{cc{}}04{{}Al}0{ce{}{}}0{{{b{l}}{Bd{{b{n}}}}}{{Ah{{Af{Ad}}}}}}767{jl}{{{b{l}}{b{An}}{b{An}}}{{Ah{{Af{Ad}}}}}}8{{{b{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{b{c}}}Bh{}}0{{{b{l}}{b{n}}{Ab{A`A`}}}{{Ah{{Af{Ad}}}}}}{{{b{l}}Bj}{{Ah{{Af{Ad}}}}}}88","D":"Bj","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"RestCatalogConfig",0,46],[5,"RestCatalog",0,46],[5,"NamespaceIdent",47],[5,"String",48],[5,"HashMap",49],[10,"Future",50],[5,"Box",51],[5,"Pin",52],[5,"TableCreation",47],[1,"usize"],[5,"TableIdent",47],[5,"Formatter",53],[8,"Result",53],[6,"Option",54],[6,"Result",55],[5,"TypeId",56],[5,"TableCommit",47]],"r":[[0,46],[1,46]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABkACAADAAMACAABAAwABQAUAAEAGQABACAAAAAkAAYALQABAA=="}],\
-["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","execute_statement","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[61,"iceberg_catalog_sql::catalog"],[62,"iceberg::catalog"],[63,"alloc::string"],[64,"std::collections::hash::map"],[65,"core::future::future"],[66,"alloc::boxed"],[67,"core::pin"],[68,"core::option"],[69,"alloc::vec"],[70,"sqlx_core::any::row"],[71,"iceberg::error"],[72,"core::fmt"],[73,"core::result"],[74,"core::any"]],"i":[15,15,0,0,0,21,5,15,21,5,15,21,5,5,21,5,15,21,5,15,21,5,15,5,5,15,5,21,5,15,21,5,15,5,21,5,15,21,5,15,5,5,5,5,5,5,5,21,5,15,21,5,15,21,5,15,5,5,21,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{j}}{b{n}}{Bd{{Bb{{b{n}}}}}}}{{Bh{{Bd{Bf}}}}}}{{{b{Bj}}{b{dBl}}}Bn}{{{b{j}}{b{dBl}}}Bn}{{{b{An}}{b{dBl}}}Bn}{cc{}}007{{}Aj}00{ce{}{}}00{{{b{j}}{Bb{{b{l}}}}}{{Af{{Ad{Ab}}}}}}:9:{Bj{{Bh{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}};{c{{C`{e}}}{}{}}00000{{{b{c}}}Cb{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}Cd}{{Af{{Ad{Ab}}}}}}777","D":"An","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,61],[5,"NamespaceIdent",62],[5,"String",63],[5,"HashMap",64],[10,"Future",65],[5,"Box",66],[5,"Pin",67],[5,"TableCreation",62],[1,"usize"],[5,"TableIdent",62],[6,"SqlBindStyle",0,61],[1,"bool"],[6,"Option",68],[5,"Vec",69],[5,"AnyRow",70],[8,"Result",71],[5,"SqlCatalogConfig",0,61],[5,"Formatter",72],[8,"Result",72],[6,"Result",73],[5,"TypeId",74],[5,"TableCommit",62]],"r":[[2,61],[3,61],[4,61]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABgAGAAUADQANABwAAgAiAAMAKQADAC4ADwA="}],\
+["iceberg_catalog_sql",{"t":"PPGFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DollarNumeric","QMark","SqlBindStyle","SqlCatalog","SqlCatalogConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","eq","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into","into","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update_namespace","update_table","vzip","vzip","vzip"],"q":[[0,"iceberg_catalog_sql"],[60,"iceberg_catalog_sql::catalog"],[61,"iceberg::catalog"],[62,"alloc::string"],[63,"std::collections::hash::map"],[64,"core::future::future"],[65,"alloc::boxed"],[66,"core::pin"],[67,"core::fmt"],[68,"core::option"],[69,"iceberg::error"],[70,"core::result"],[71,"core::any"]],"i":[15,15,0,0,0,17,5,15,17,5,15,17,5,5,17,5,15,17,5,15,17,5,15,5,5,15,17,5,15,17,5,15,5,17,5,15,17,5,15,5,5,5,5,5,5,5,17,5,15,17,5,15,17,5,15,5,5,17,5,15],"f":"`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{}{{`{{h{ffffff}}}}}}{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{l}}Ah}{{Af{{Ad{Ab}}}}}}{Aj{{b{c}}}{}}00{Aj{{b{dc}}}{}}00{Ajf}00{{{b{j}}{b{l}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}{b{Al}}}{{Af{{Ad{Ab}}}}}}{{{b{An}}{b{An}}}B`}{{{b{Bb}}{b{dBd}}}Bf}{{{b{j}}{b{dBd}}}Bf}{{{b{An}}{b{dBd}}}Bf}{cc{}}006{{}Aj}00{ce{}{}}00{{{b{j}}{Bh{{b{l}}}}}{{Af{{Ad{Ab}}}}}}989{Bb{{Bj{j}}}}{{{b{j}}{b{Al}}{b{Al}}}{{Af{{Ad{Ab}}}}}}:{c{{Bl{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{j}}{b{l}}{A`{nn}}}{{Af{{Ad{Ab}}}}}}{{{b{j}}C`}{{Af{{Ad{Ab}}}}}}777","D":"Al","p":[[1,"reference"],[0,"mut"],[1,"unit"],[1,"tuple"],[5,"SqlCatalog",0,60],[5,"NamespaceIdent",61],[5,"String",62],[5,"HashMap",63],[10,"Future",64],[5,"Box",65],[5,"Pin",66],[5,"TableCreation",61],[1,"usize"],[5,"TableIdent",61],[6,"SqlBindStyle",0,60],[1,"bool"],[5,"SqlCatalogConfig",0,60],[5,"Formatter",67],[8,"Result",67],[6,"Option",68],[8,"Result",69],[6,"Result",70],[5,"TypeId",71],[5,"TableCommit",61]],"r":[[2,60],[3,60],[4,60]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC4ABQAGAAUADQAQACEAAwAoAAMALQAPAA=="}],\
["iceberg_datafusion",{"t":"FNNNNNNNHNNNNHNNNNN","n":["IcebergCatalogProvider","as_any","borrow","borrow_mut","deref","deref_mut","drop","from","from_datafusion_error","init","into","schema","schema_names","to_datafusion_error","try_from","try_into","try_new","type_id","vzip"],"q":[[0,"iceberg_datafusion"],[19,"iceberg_datafusion::catalog"],[20,"core::any"],[21,"datafusion_common::error"],[22,"iceberg::error"],[23,"datafusion_catalog::schema"],[24,"alloc::sync"],[25,"core::option"],[26,"alloc::string"],[27,"alloc::vec"],[28,"core::result"],[29,"iceberg::catalog"],[30,"iceberg_datafusion::error"]],"i":[0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1],"f":"`{{{d{b}}}{{d{f}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{j{{d{c}}}{}}{j{{d{hc}}}{}}{jl}{cc{}}{nA`}{{}j}{ce{}{}}{{{d{b}}{d{Ab}}}{{Ah{{Af{Ad}}}}}}{{{d{b}}}{{Al{Aj}}}}{A`n}{c{{An{e}}}{}{}}0{{{Af{B`}}}{{Bb{b}}}}{{{d{c}}}Bd{}}6","D":"l","p":[[5,"IcebergCatalogProvider",0,19],[1,"reference"],[10,"Any",20],[0,"mut"],[1,"usize"],[1,"unit"],[6,"DataFusionError",21],[5,"Error",22],[1,"str"],[10,"SchemaProvider",23],[5,"Arc",24],[6,"Option",25],[5,"String",26],[5,"Vec",27],[6,"Result",28],[10,"Catalog",29],[8,"Result",22],[5,"TypeId",20]],"r":[[0,19],[8,30],[13,30]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABgAAAAAAAgAFAAoAAAAMAAEADwABABIAAQA="}],\
["iceberg_test_utils",{"t":"CHHFNNNNNNNNNNNNN","n":["docker","normalize_test_name","set_up","DockerCompose","borrow","borrow_mut","drop","fmt","from","get_container_ip","into","new","project_name","run","try_from","try_into","type_id"],"q":[[0,"iceberg_test_utils"],[3,"iceberg_test_utils::docker"],[17,"alloc::string"],[18,"core::fmt"],[19,"core::net::ip_addr"],[20,"core::convert"],[21,"core::result"],[22,"core::any"],[23,"iceberg_test_utils::common"]],"i":[0,0,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"`{cbd}{{}f}`{{{h{c}}}{{h{e}}}{}{}}{{{h{jc}}}{{h{je}}}{}{}}{{{h{jl}}}f}{{{h{l}}{h{jn}}}A`}{cc{}}{{{h{l}}c}Ab{{Af{Ad}}}}{ce{}{}}{{ce}ldd}{{{h{l}}}{{h{Ad}}}}{{{h{l}}}f}{c{{Ah{e}}}{}{}}0{{{h{c}}}Aj{}}","D":"h","p":[[5,"String",17],[10,"ToString",17],[1,"unit"],[1,"reference"],[0,"mut"],[5,"DockerCompose",3],[5,"Formatter",18],[8,"Result",18],[6,"IpAddr",19],[1,"str"],[10,"AsRef",20],[6,"Result",21],[5,"TypeId",22]],"r":[[1,23],[2,23]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAA0ABAABAAIABQADAAoAAAAMAAUA"}]\
]'));
diff --git a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
index 9efa3d3ff..01e8bb606 100644
--- a/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
+++ b/api/search.desc/iceberg_catalog_sql/iceberg_catalog_sql-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nSql catalog config\nCreate a builder for building SqlCatalogConfig
. On the …\nSQLX Any does not implement PostgresSQL bindings, so we …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
+searchState.loadedDescShard("iceberg_catalog_sql", 0, "Iceberg sql catalog implementation.\nDollarNumeric uses parameters of the form `$1..$N``, which …\nQMark uses parameters of the form ?
which is the style for …\nSet the SQL parameter bind style to either $1..$N …\nSql catalog implementation.\nA struct representing the SQL catalog configuration.\nCreate a builder for building SqlCatalogConfig
. On the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCreate new sql catalog instance")
\ No newline at end of file
diff --git a/api/src/iceberg_catalog_sql/catalog.rs.html b/api/src/iceberg_catalog_sql/catalog.rs.html
index 2d320d5a1..ac609b512 100644
--- a/api/src/iceberg_catalog_sql/catalog.rs.html
+++ b/api/src/iceberg_catalog_sql/catalog.rs.html
@@ -277,6 +277,664 @@
277
278
279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -294,19 +952,20 @@
// specific language governing permissions and limitations
// under the License.
-use std::borrow::Cow;
-use std::collections::HashMap;
+use std::collections::{HashMap, HashSet};
use std::time::Duration;
use async_trait::async_trait;
use iceberg::io::FileIO;
use iceberg::table::Table;
-use iceberg::{Catalog, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent};
-use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyRow};
-use sqlx::AnyPool;
+use iceberg::{
+ Catalog, Error, Namespace, NamespaceIdent, Result, TableCommit, TableCreation, TableIdent,
+};
+use sqlx::any::{install_default_drivers, AnyPoolOptions, AnyQueryResult, AnyRow};
+use sqlx::{Any, AnyPool, Row, Transaction};
use typed_builder::TypedBuilder;
-use crate::error::from_sqlx_error;
+use crate::error::{from_sqlx_error, no_such_namespace_err};
static CATALOG_TABLE_NAME: &str = "iceberg_tables";
static CATALOG_FIELD_CATALOG_NAME: &str = "catalog_name";
@@ -325,7 +984,14 @@
static IDLE_TIMEOUT: u64 = 10; // Default the maximum idle timeout per connection to 10s before it is closed
static TEST_BEFORE_ACQUIRE: bool = true; // Default the health-check of each connection to enabled prior to returning
-/// Sql catalog config
+/// A struct representing the SQL catalog configuration.
+///
+/// This struct contains various parameters that are used to configure a SQL catalog,
+/// such as the database URI, warehouse location, and file I/O settings.
+/// You are required to provide a `SqlBindStyle`, which determines how SQL statements will be bound to values in the catalog.
+/// The options available for this parameter include:
+/// - `SqlBindStyle::DollarNumeric`: Binds SQL statements using `$1`, `$2`, etc., as placeholders. This is for PostgreSQL databases.
+/// - `SqlBindStyle::QuestionMark`: Binds SQL statements using `?` as a placeholder. This is for MySQL and SQLite databases.
#[derive(Debug, TypedBuilder)]
pub struct SqlCatalogConfig {
uri: String,
@@ -340,7 +1006,7 @@
#[derive(Debug)]
/// Sql catalog implementation.
pub struct SqlCatalog {
- _name: String,
+ name: String,
connection: AnyPool,
_warehouse_location: String,
_fileio: FileIO,
@@ -411,7 +1077,7 @@
.map_err(from_sqlx_error)?;
Ok(SqlCatalog {
- _name: config.name.to_owned(),
+ name: config.name.to_owned(),
connection: pool,
_warehouse_location: config.warehouse_location,
_fileio: config.file_io,
@@ -420,21 +1086,30 @@
}
/// SQLX Any does not implement PostgresSQL bindings, so we have to do this.
- pub async fn execute_statement(
- &self,
- query: &String,
- args: Vec<Option<&String>>,
- ) -> Result<Vec<AnyRow>> {
- let query_with_placeholders: Cow<str> =
- if self.sql_bind_style == SqlBindStyle::DollarNumeric {
- let mut query = query.clone();
- for i in 0..args.len() {
- query = query.replacen("?", &format!("${}", i + 1), 1);
- }
- Cow::Owned(query)
- } else {
- Cow::Borrowed(query)
- };
+ fn replace_placeholders(&self, query: &str) -> String {
+ match self.sql_bind_style {
+ SqlBindStyle::DollarNumeric => {
+ let mut count = 1;
+ query
+ .chars()
+ .fold(String::with_capacity(query.len()), |mut acc, c| {
+ if c == '?' {
+ acc.push('$');
+ acc.push_str(&count.to_string());
+ count += 1;
+ } else {
+ acc.push(c);
+ }
+ acc
+ })
+ }
+ _ => query.to_owned(),
+ }
+ }
+
+ /// Fetch a vec of AnyRows from a given query
+ async fn fetch_rows(&self, query: &str, args: Vec<Option<&str>>) -> Result<Vec<AnyRow>> {
+ let query_with_placeholders = self.replace_placeholders(query);
let mut sqlx_query = sqlx::query(&query_with_placeholders);
for arg in args {
@@ -446,39 +1121,292 @@
.await
.map_err(from_sqlx_error)
}
+
+ /// Execute statements in a transaction, provided or not
+ async fn execute(
+ &self,
+ query: &str,
+ args: Vec<Option<&str>>,
+ transaction: Option<&mut Transaction<'_, Any>>,
+ ) -> Result<AnyQueryResult> {
+ let query_with_placeholders = self.replace_placeholders(query);
+
+ let mut sqlx_query = sqlx::query(&query_with_placeholders);
+ for arg in args {
+ sqlx_query = sqlx_query.bind(arg);
+ }
+
+ match transaction {
+ Some(t) => sqlx_query.execute(&mut **t).await.map_err(from_sqlx_error),
+ None => {
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let result = sqlx_query.execute(&mut *tx).await.map_err(from_sqlx_error);
+ let _ = tx.commit().await.map_err(from_sqlx_error);
+ result
+ }
+ }
+ }
}
#[async_trait]
impl Catalog for SqlCatalog {
async fn list_namespaces(
&self,
- _parent: Option<&NamespaceIdent>,
+ parent: Option<&NamespaceIdent>,
) -> Result<Vec<NamespaceIdent>> {
- todo!()
+ // UNION will remove duplicates.
+ let all_namespaces_stmt = format!(
+ "SELECT {CATALOG_FIELD_TABLE_NAMESPACE}
+ FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ UNION
+ SELECT {NAMESPACE_FIELD_NAME}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?"
+ );
+
+ let namespace_rows = self
+ .fetch_rows(&all_namespaces_stmt, vec![
+ Some(&self.name),
+ Some(&self.name),
+ ])
+ .await?;
+
+ let mut namespaces = HashSet::<NamespaceIdent>::with_capacity(namespace_rows.len());
+
+ if let Some(parent) = parent {
+ if self.namespace_exists(parent).await? {
+ let parent_str = parent.join(".");
+
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ // if parent = a, then we only want to see a.b, a.c returned.
+ if nsp != parent_str && nsp.starts_with(&parent_str) {
+ namespaces.insert(NamespaceIdent::from_strs(nsp.split("."))?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ } else {
+ no_such_namespace_err(parent)
+ }
+ } else {
+ for row in namespace_rows.iter() {
+ let nsp = row.try_get::<String, _>(0).map_err(from_sqlx_error)?;
+ let mut levels = nsp.split(".").collect::<Vec<&str>>();
+ if !levels.is_empty() {
+ let first_level = levels.drain(..1).collect::<Vec<&str>>();
+ namespaces.insert(NamespaceIdent::from_strs(first_level)?);
+ }
+ }
+
+ Ok(namespaces.into_iter().collect::<Vec<NamespaceIdent>>())
+ }
}
async fn create_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<Namespace> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+
+ if exists {
+ return Err(Error::new(
+ iceberg::ErrorKind::Unexpected,
+ format!("Namespace {:?} already exists", namespace),
+ ));
+ }
+
+ let namespace_str = namespace.join(".");
+ let insert = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)");
+ if !properties.is_empty() {
+ let mut insert_properties = properties.clone();
+ insert_properties.insert("exists".to_string(), "true".to_string());
+
+ let mut query_args = Vec::with_capacity(insert_properties.len() * 4);
+ let mut insert_stmt = insert.clone();
+ for (index, (key, value)) in insert_properties.iter().enumerate() {
+ query_args.extend_from_slice(&[
+ Some(self.name.as_str()),
+ Some(namespace_str.as_str()),
+ Some(key.as_str()),
+ Some(value.as_str()),
+ ]);
+ if index > 0 {
+ insert_stmt.push_str(", (?, ?, ?, ?)");
+ }
+ }
+
+ self.execute(&insert_stmt, query_args, None).await?;
+
+ Ok(Namespace::with_properties(
+ namespace.clone(),
+ insert_properties,
+ ))
+ } else {
+ // set a default property of exists = true
+ self.execute(
+ &insert,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some("exists"),
+ Some("true"),
+ ],
+ None,
+ )
+ .await?;
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ }
}
- async fn get_namespace(&self, _namespace: &NamespaceIdent) -> Result<Namespace> {
- todo!()
+ async fn get_namespace(&self, namespace: &NamespaceIdent) -> Result<Namespace> {
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let namespace_props = self
+ .fetch_rows(
+ &format!(
+ "SELECT
+ {NAMESPACE_FIELD_NAME},
+ {NAMESPACE_FIELD_PROPERTY_KEY},
+ {NAMESPACE_FIELD_PROPERTY_VALUE}
+ FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?"
+ ),
+ vec![Some(&self.name), Some(&namespace.join("."))],
+ )
+ .await?;
+
+ let mut properties = HashMap::with_capacity(namespace_props.len());
+
+ for row in namespace_props {
+ let key = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_KEY)
+ .map_err(from_sqlx_error)?;
+ let value = row
+ .try_get::<String, _>(NAMESPACE_FIELD_PROPERTY_VALUE)
+ .map_err(from_sqlx_error)?;
+
+ properties.insert(key, value);
+ }
+
+ Ok(Namespace::with_properties(namespace.clone(), properties))
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
- async fn namespace_exists(&self, _namespace: &NamespaceIdent) -> Result<bool> {
- todo!()
+ async fn namespace_exists(&self, namespace: &NamespaceIdent) -> Result<bool> {
+ let namespace_str = namespace.join(".");
+
+ let table_namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {CATALOG_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {CATALOG_FIELD_TABLE_NAMESPACE} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+
+ if !table_namespaces.is_empty() {
+ Ok(true)
+ } else {
+ let namespaces = self
+ .fetch_rows(
+ &format!(
+ "SELECT 1 FROM {NAMESPACE_TABLE_NAME}
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ LIMIT 1"
+ ),
+ vec![Some(&self.name), Some(&namespace_str)],
+ )
+ .await?;
+ if !namespaces.is_empty() {
+ Ok(true)
+ } else {
+ Ok(false)
+ }
+ }
}
async fn update_namespace(
&self,
- _namespace: &NamespaceIdent,
- _properties: HashMap<String, String>,
+ namespace: &NamespaceIdent,
+ properties: HashMap<String, String>,
) -> Result<()> {
- todo!()
+ let exists = self.namespace_exists(namespace).await?;
+ if exists {
+ let existing_properties = self.get_namespace(namespace).await?.properties().clone();
+ let namespace_str = namespace.join(".");
+
+ let mut updates = vec![];
+ let mut inserts = vec![];
+
+ for (key, value) in properties.iter() {
+ if existing_properties.contains_key(key) {
+ if existing_properties.get(key) != Some(value) {
+ updates.push((key, value));
+ }
+ } else {
+ inserts.push((key, value));
+ }
+ }
+
+ let mut tx = self.connection.begin().await.map_err(from_sqlx_error)?;
+ let update_stmt = format!(
+ "UPDATE {NAMESPACE_TABLE_NAME} SET {NAMESPACE_FIELD_PROPERTY_VALUE} = ?
+ WHERE {CATALOG_FIELD_CATALOG_NAME} = ?
+ AND {NAMESPACE_FIELD_NAME} = ?
+ AND {NAMESPACE_FIELD_PROPERTY_KEY} = ?"
+ );
+
+ let insert_stmt = format!(
+ "INSERT INTO {NAMESPACE_TABLE_NAME} ({CATALOG_FIELD_CATALOG_NAME}, {NAMESPACE_FIELD_NAME}, {NAMESPACE_FIELD_PROPERTY_KEY}, {NAMESPACE_FIELD_PROPERTY_VALUE})
+ VALUES (?, ?, ?, ?)"
+ );
+
+ for (key, value) in updates {
+ self.execute(
+ &update_stmt,
+ vec![
+ Some(value),
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ for (key, value) in inserts {
+ self.execute(
+ &insert_stmt,
+ vec![
+ Some(&self.name),
+ Some(&namespace_str),
+ Some(key),
+ Some(value),
+ ],
+ Some(&mut tx),
+ )
+ .await?;
+ }
+
+ let _ = tx.commit().await.map_err(from_sqlx_error)?;
+
+ Ok(())
+ } else {
+ no_such_namespace_err(namespace)
+ }
}
async fn drop_namespace(&self, _namespace: &NamespaceIdent) -> Result<()> {
@@ -520,8 +1448,11 @@
#[cfg(test)]
mod tests {
+ use std::collections::{HashMap, HashSet};
+ use std::hash::Hash;
+
use iceberg::io::FileIOBuilder;
- use iceberg::Catalog;
+ use iceberg::{Catalog, Namespace, NamespaceIdent};
use sqlx::migrate::MigrateDatabase;
use tempfile::TempDir;
@@ -532,6 +1463,14 @@
temp_dir.path().to_str().unwrap().to_string()
}
+ fn to_set<T: std::cmp::Eq + Hash>(vec: Vec<T>) -> HashSet<T> {
+ HashSet::from_iter(vec)
+ }
+
+ fn default_properties() -> HashMap<String, String> {
+ HashMap::from([("exists".to_string(), "true".to_string())])
+ }
+
async fn new_sql_catalog(warehouse_location: String) -> impl Catalog {
let sql_lite_uri = format!("sqlite:{}", temp_path());
sqlx::Sqlite::create_database(&sql_lite_uri).await.unwrap();
@@ -547,6 +1486,19 @@
SqlCatalog::new(config).await.unwrap()
}
+ async fn create_namespace<C: Catalog>(catalog: &C, namespace_ident: &NamespaceIdent) {
+ let _ = catalog
+ .create_namespace(namespace_ident, HashMap::new())
+ .await
+ .unwrap();
+ }
+
+ async fn create_namespaces<C: Catalog>(catalog: &C, namespace_idents: &Vec<&NamespaceIdent>) {
+ for namespace_ident in namespace_idents {
+ let _ = create_namespace(catalog, namespace_ident).await;
+ }
+ }
+
#[tokio::test]
async fn test_initialized() {
let warehouse_loc = temp_path();
@@ -555,5 +1507,369 @@
new_sql_catalog(warehouse_loc.clone()).await;
new_sql_catalog(warehouse_loc.clone()).await;
}
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_empty_vector() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ assert_eq!(catalog.list_namespaces(None).await.unwrap(), vec![]);
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_2])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_only_top_level_namespaces() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1, namespace_ident_3])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_no_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![&namespace_ident_1, &namespace_ident_2]).await;
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_namespace_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".into());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::new("c".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(catalog.list_namespaces(None).await.unwrap()),
+ to_set(vec![namespace_ident_1.clone(), namespace_ident_3])
+ );
+
+ assert_eq!(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap(),
+ vec![NamespaceIdent::from_strs(vec!["a", "b"]).unwrap()]
+ );
+ }
+
+ #[tokio::test]
+ async fn test_list_namespaces_returns_multiple_namespaces_under_parent() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_1 = NamespaceIdent::new("a".to_string());
+ let namespace_ident_2 = NamespaceIdent::from_strs(vec!["a", "a"]).unwrap();
+ let namespace_ident_3 = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_4 = NamespaceIdent::from_strs(vec!["a", "c"]).unwrap();
+ let namespace_ident_5 = NamespaceIdent::new("b".into());
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_1,
+ &namespace_ident_2,
+ &namespace_ident_3,
+ &namespace_ident_4,
+ &namespace_ident_5,
+ ])
+ .await;
+
+ assert_eq!(
+ to_set(
+ catalog
+ .list_namespaces(Some(&namespace_ident_1))
+ .await
+ .unwrap()
+ ),
+ to_set(vec![
+ NamespaceIdent::from_strs(vec!["a", "a"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "b"]).unwrap(),
+ NamespaceIdent::from_strs(vec!["a", "c"]).unwrap(),
+ ])
+ );
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_false() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(!catalog
+ .namespace_exists(&NamespaceIdent::new("b".into()))
+ .await
+ .unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_namespace_exists_returns_true() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert!(catalog.namespace_exists(&namespace_ident).await.unwrap());
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_with_properties() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+
+ let mut properties = default_properties();
+ properties.insert("k".into(), "v".into());
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, properties.clone())
+ .await
+ .unwrap(),
+ Namespace::with_properties(namespace_ident.clone(), properties.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, properties)
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_namespace_throws_error_if_namespace_already_exists() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident, HashMap::new())
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => Namespace {:?} already exists",
+ &namespace_ident
+ )
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident).await.unwrap(),
+ Namespace::with_properties(namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let parent_namespace_ident = NamespaceIdent::new("a".into());
+ create_namespace(&catalog, &parent_namespace_ident).await;
+
+ let child_namespace_ident = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&child_namespace_ident, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(child_namespace_ident.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&child_namespace_ident).await.unwrap(),
+ Namespace::with_properties(child_namespace_ident, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ async fn test_create_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+
+ assert_eq!(
+ catalog
+ .create_namespace(&namespace_ident_a_b_c, HashMap::new())
+ .await
+ .unwrap(),
+ Namespace::new(namespace_ident_a_b_c.clone())
+ );
+
+ assert_eq!(
+ catalog.get_namespace(&namespace_ident_a_b_c).await.unwrap(),
+ Namespace::with_properties(namespace_ident_a_b_c, default_properties())
+ );
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident = NamespaceIdent::new("abc".into());
+ create_namespace(&catalog, &namespace_ident).await;
+
+ catalog.drop_namespace(&namespace_ident).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident).await.unwrap())
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a_b).await.unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_deeply_nested_namespace() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ let namespace_ident_a_b_c = NamespaceIdent::from_strs(vec!["a", "b", "c"]).unwrap();
+ create_namespaces(&catalog, &vec![
+ &namespace_ident_a,
+ &namespace_ident_a_b,
+ &namespace_ident_a_b_c,
+ ])
+ .await;
+
+ catalog
+ .drop_namespace(&namespace_ident_a_b_c)
+ .await
+ .unwrap();
+
+ assert!(!catalog
+ .namespace_exists(&namespace_ident_a_b_c)
+ .await
+ .unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+
+ assert!(catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+
+ let non_existent_namespace_ident = NamespaceIdent::new("abc".into());
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_drop_namespace_throws_error_if_nested_namespace_doesnt_exist() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ create_namespace(&catalog, &NamespaceIdent::new("a".into())).await;
+
+ let non_existent_namespace_ident =
+ NamespaceIdent::from_vec(vec!["a".into(), "b".into()]).unwrap();
+ assert_eq!(
+ catalog
+ .drop_namespace(&non_existent_namespace_ident)
+ .await
+ .unwrap_err()
+ .to_string(),
+ format!(
+ "Unexpected => No such namespace: {:?}",
+ non_existent_namespace_ident
+ )
+ )
+ }
+
+ #[tokio::test]
+ #[ignore = "drop_namespace not implemented"]
+ async fn test_dropping_a_namespace_does_not_drop_namespaces_nested_under_that_one() {
+ let warehouse_loc = temp_path();
+ let catalog = new_sql_catalog(warehouse_loc).await;
+ let namespace_ident_a = NamespaceIdent::new("a".into());
+ let namespace_ident_a_b = NamespaceIdent::from_strs(vec!["a", "b"]).unwrap();
+ create_namespaces(&catalog, &vec![&namespace_ident_a, &namespace_ident_a_b]).await;
+
+ catalog.drop_namespace(&namespace_ident_a).await.unwrap();
+
+ assert!(!catalog.namespace_exists(&namespace_ident_a).await.unwrap());
+
+ assert!(catalog
+ .namespace_exists(&namespace_ident_a_b)
+ .await
+ .unwrap());
+ }
}
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -42,7 +49,7 @@
// specific language governing permissions and limitations
// under the License.
-use iceberg::{Error, ErrorKind};
+use iceberg::{Error, ErrorKind, NamespaceIdent, Result};
/// Format an sqlx error into iceberg error.
pub fn from_sqlx_error(error: sqlx::Error) -> Error {
@@ -52,4 +59,11 @@
)
.with_source(error)
}
+
+pub fn no_such_namespace_err<T>(namespace: &NamespaceIdent) -> Result<T> {
+ Err(Error::new(
+ ErrorKind::Unexpected,
+ format!("No such namespace: {:?}", namespace),
+ ))
+}