From fce2e2b7d9683c1667665f335a5d78378ea56789 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:23:45 -0400
Subject: [PATCH 01/38] new keras api submodules: keras.src.** -> keras.api.*
---
.tether/man/keras.applications.txt | 34 +++++++--------
.tether/man/keras.datasets.txt | 16 +++----
.tether/man/keras.legacy.txt | 2 +-
.tether/man/keras.preprocessing.txt | 4 +-
.tether/man/keras.txt | 66 ++++++++++++++---------------
.tether/man/keras.utils.txt | 2 +-
6 files changed, 60 insertions(+), 64 deletions(-)
diff --git a/.tether/man/keras.applications.txt b/.tether/man/keras.applications.txt
index 49ae25254..8d9db78cf 100644
--- a/.tether/man/keras.applications.txt
+++ b/.tether/man/keras.applications.txt
@@ -1,4 +1,4 @@
-convnext: Module(keras.applications.convnext)
+convnext: Module(keras.api.applications.convnext)
ConvNeXtBase(
model_name='convnext_base',
include_top=True,
@@ -54,7 +54,7 @@ ConvNeXtXLarge(
classes=1000,
classifier_activation='softmax'
)
-densenet: Module(keras.applications.densenet)
+densenet: Module(keras.api.applications.densenet)
DenseNet121(
include_top=True,
weights='imagenet',
@@ -82,8 +82,8 @@ DenseNet201(
classes=1000,
classifier_activation='softmax'
)
-efficientnet: Module(keras.applications.efficientnet)
-efficientnet_v2: Module(keras.applications.efficientnet_v2)
+efficientnet: Module(keras.api.applications.efficientnet)
+efficientnet_v2: Module(keras.api.applications.efficientnet_v2)
EfficientNetB0(
include_top=True,
weights='imagenet',
@@ -234,9 +234,9 @@ EfficientNetV2S(
classifier_activation='softmax',
include_preprocessing=True
)
-imagenet_utils: Module(keras.applications.imagenet_utils)
-inception_resnet_v2: Module(keras.applications.inception_resnet_v2)
-inception_v3: Module(keras.applications.inception_v3)
+imagenet_utils: Module(keras.api.applications.imagenet_utils)
+inception_resnet_v2: Module(keras.api.applications.inception_resnet_v2)
+inception_v3: Module(keras.api.applications.inception_v3)
InceptionResNetV2(
include_top=True,
weights='imagenet',
@@ -255,7 +255,7 @@ InceptionV3(
classes=1000,
classifier_activation='softmax'
)
-mobilenet: Module(keras.applications.mobilenet)
+mobilenet: Module(keras.api.applications.mobilenet)
MobileNet(
input_shape=None,
alpha=1.0,
@@ -268,8 +268,8 @@ MobileNet(
classes=1000,
classifier_activation='softmax'
)
-mobilenet_v2: Module(keras.applications.mobilenet_v2)
-mobilenet_v3: Module(keras.applications.mobilenet_v3)
+mobilenet_v2: Module(keras.api.applications.mobilenet_v2)
+mobilenet_v3: Module(keras.api.applications.mobilenet_v3)
MobileNetV2(
input_shape=None,
alpha=1.0,
@@ -306,7 +306,7 @@ MobileNetV3Small(
classifier_activation='softmax',
include_preprocessing=True
)
-nasnet: Module(keras.applications.nasnet)
+nasnet: Module(keras.api.applications.nasnet)
NASNetLarge(
input_shape=None,
include_top=True,
@@ -325,8 +325,8 @@ NASNetMobile(
classes=1000,
classifier_activation='softmax'
)
-resnet: Module(keras.applications.resnet)
-resnet_v2: Module(keras.applications.resnet_v2)
+resnet: Module(keras.api.applications.resnet)
+resnet_v2: Module(keras.api.applications.resnet_v2)
ResNet101(
include_top=True,
weights='imagenet',
@@ -363,7 +363,7 @@ ResNet152V2(
classes=1000,
classifier_activation='softmax'
)
-resnet50: Module(keras.applications.resnet50)
+resnet50: Module(keras.api.applications.resnet50)
ResNet50(
include_top=True,
weights='imagenet',
@@ -382,7 +382,7 @@ ResNet50V2(
classes=1000,
classifier_activation='softmax'
)
-vgg16: Module(keras.applications.vgg16)
+vgg16: Module(keras.api.applications.vgg16)
VGG16(
include_top=True,
weights='imagenet',
@@ -392,7 +392,7 @@ VGG16(
classes=1000,
classifier_activation='softmax'
)
-vgg19: Module(keras.applications.vgg19)
+vgg19: Module(keras.api.applications.vgg19)
VGG19(
include_top=True,
weights='imagenet',
@@ -402,7 +402,7 @@ VGG19(
classes=1000,
classifier_activation='softmax'
)
-xception: Module(keras.applications.xception)
+xception: Module(keras.api.applications.xception)
Xception(
include_top=True,
weights='imagenet',
diff --git a/.tether/man/keras.datasets.txt b/.tether/man/keras.datasets.txt
index 79bb80818..f771e1b50 100644
--- a/.tether/man/keras.datasets.txt
+++ b/.tether/man/keras.datasets.txt
@@ -1,9 +1,9 @@
-boston_housing: Module(keras.datasets.boston_housing)
-california_housing: Module(keras.datasets.california_housing)
-cifar10: Module(keras.datasets.cifar10)
-cifar100: Module(keras.datasets.cifar100)
-fashion_mnist: Module(keras.datasets.fashion_mnist)
-imdb: Module(keras.datasets.imdb)
-mnist: Module(keras.datasets.mnist)
-reuters: Module(keras.datasets.reuters)
+boston_housing: Module(keras.api.datasets.boston_housing)
+california_housing: Module(keras.api.datasets.california_housing)
+cifar10: Module(keras.api.datasets.cifar10)
+cifar100: Module(keras.api.datasets.cifar100)
+fashion_mnist: Module(keras.api.datasets.fashion_mnist)
+imdb: Module(keras.api.datasets.imdb)
+mnist: Module(keras.api.datasets.mnist)
+reuters: Module(keras.api.datasets.reuters)
diff --git a/.tether/man/keras.legacy.txt b/.tether/man/keras.legacy.txt
index 43e1bbaf2..13f97b309 100644
--- a/.tether/man/keras.legacy.txt
+++ b/.tether/man/keras.legacy.txt
@@ -1,2 +1,2 @@
-saving: Module(keras.legacy.saving)
+saving: Module(keras.api.legacy.saving)
diff --git a/.tether/man/keras.preprocessing.txt b/.tether/man/keras.preprocessing.txt
index 4ba34405b..c7da2c534 100644
--- a/.tether/man/keras.preprocessing.txt
+++ b/.tether/man/keras.preprocessing.txt
@@ -1,4 +1,4 @@
-image: Module(keras.preprocessing.image)
+image: Module(keras.api.preprocessing.image)
image_dataset_from_directory(
directory,
labels='inferred',
@@ -18,7 +18,7 @@ image_dataset_from_directory(
data_format=None,
verbose=True
)
-sequence: Module(keras.preprocessing.sequence)
+sequence: Module(keras.api.preprocessing.sequence)
text_dataset_from_directory(
directory,
labels='inferred',
diff --git a/.tether/man/keras.txt b/.tether/man/keras.txt
index 69e7f9904..6c5b01579 100644
--- a/.tether/man/keras.txt
+++ b/.tether/man/keras.txt
@@ -1,21 +1,19 @@
-AbsMaxQuantizer(
- axis,
- value_range=(-127, 127),
- epsilon=1e-07,
- output_dtype='int8'
-)
-activations: Module(keras.activations)
-applications: Module(keras.applications)
-backend: Module(keras.backend)
-callbacks: Module(keras.callbacks)
-config: Module(keras.config)
-constraints: Module(keras.constraints)
-datasets: Module(keras.datasets)
+activations: Module(keras.api.activations)
+applications: Module(keras.api.applications)
+backend: Module(keras.api.backend)
+callbacks: Module(keras.api.callbacks)
+config: Module(keras.api.config)
+constraints: Module(keras.api.constraints)
+datasets: Module(keras.api.datasets)
device(device_name)
-distribution: Module(keras.distribution)
-dtype_policies: Module(keras.dtype_policies)
-DTypePolicy(name)
-export: Module(keras.export)
+distribution: Module(keras.api.distribution)
+dtype_policies: Module(keras.api.dtype_policies)
+DTypePolicy(
+ name,
+ *args,
+ **kwargs
+)
+export: Module(keras.api.export)
FloatDTypePolicy(name)
Function(
inputs,
@@ -23,7 +21,7 @@ Function(
name=None
)
Initializer()
-initializers: Module(keras.initializers)
+initializers: Module(keras.api.initializers)
Input(
shape=None,
batch_size=None,
@@ -51,41 +49,39 @@ KerasTensor(
name=None
)
Layer(*args, **kwargs)
-layers: Module(keras.layers)
-legacy: Module(keras.legacy)
+layers: Module(keras.api.layers)
+legacy: Module(keras.api.legacy)
Loss(
name=None,
reduction='sum_over_batch_size',
dtype=None
)
-losses: Module(keras.losses)
+losses: Module(keras.api.losses)
Metric(dtype=None, name=None)
-metrics: Module(keras.metrics)
-mixed_precision: Module(keras.mixed_precision)
+metrics: Module(keras.api.metrics)
+mixed_precision: Module(keras.api.mixed_precision)
Model(*args, **kwargs)
-models: Module(keras.models)
+models: Module(keras.api.models)
name_scope(name, **kwargs)
Operation(*args, **kwargs)
-ops: Module(keras.ops)
+ops: Module(keras.api.ops)
Optimizer(*args, **kwargs)
-optimizers: Module(keras.optimizers)
-preprocessing: Module(keras.preprocessing)
-QuantizedDTypePolicy(name)
+optimizers: Module(keras.api.optimizers)
+preprocessing: Module(keras.api.preprocessing)
Quantizer(output_dtype='int8')
-quantizers: Module(keras.quantizers)
-random: Module(keras.random)
+quantizers: Module(keras.api.quantizers)
+random: Module(keras.api.random)
Regularizer()
-regularizers: Module(keras.regularizers)
-saving: Module(keras.saving)
+regularizers: Module(keras.api.regularizers)
+saving: Module(keras.api.saving)
Sequential(*args, **kwargs)
-src: Module(keras.src)
StatelessScope(
state_mapping=None,
collect_losses=False,
initialize_variables=True
)
-tree: Module(keras.tree)
-utils: Module(keras.utils)
+tree: Module(keras.api.tree)
+utils: Module(keras.api.utils)
Variable(
initializer,
shape=None,
diff --git a/.tether/man/keras.utils.txt b/.tether/man/keras.utils.txt
index dcdd8f33f..f6f58a025 100644
--- a/.tether/man/keras.utils.txt
+++ b/.tether/man/keras.utils.txt
@@ -87,7 +87,7 @@ img_to_array(
)
is_interactive_logging_enabled()
is_keras_tensor(x)
-legacy: Module(keras.utils.legacy)
+legacy: Module(keras.api.utils.legacy)
load_img(
path,
color_mode='rgb',
From 8308caddd39e60f8d91dd67e07f0090e459d6f2c Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:26:57 -0400
Subject: [PATCH 02/38] new arg: `random_seed_generator(name = )`
---
.tether/man/random_seed_generator.txt | 7 ++++++-
R/random.R | 4 +++-
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/.tether/man/random_seed_generator.txt b/.tether/man/random_seed_generator.txt
index 683c3a0cb..e44a3d8c0 100644
--- a/.tether/man/random_seed_generator.txt
+++ b/.tether/man/random_seed_generator.txt
@@ -1,7 +1,11 @@
Help on class SeedGenerator in module keras.src.random.seed_generator:
class SeedGenerator(builtins.object)
- | SeedGenerator(seed=None, **kwargs)
+ | SeedGenerator(
+ | seed=None,
+ | name=None,
+ | **kwargs
+ | )
|
| Generates variable seeds upon each call to a RNG-using function.
|
@@ -41,6 +45,7 @@ class SeedGenerator(builtins.object)
| __init__(
| self,
| seed=None,
+ | name=None,
| **kwargs
| )
| Initialize self. See help(type(self)) for accurate signature.
diff --git a/R/random.R b/R/random.R
index 1073436a5..91abef6cd 100644
--- a/R/random.R
+++ b/R/random.R
@@ -385,6 +385,8 @@ function (shape, minval = 0, maxval = 1, dtype = NULL, seed = NULL)
#' @param seed
#' Initial seed for the random number generator
#'
+#' @param name String, name for the object
+#'
#' @param ...
#' For forward/backward compatability.
#'
@@ -397,7 +399,7 @@ function (shape, minval = 0, maxval = 1, dtype = NULL, seed = NULL)
#'
#' @tether keras.random.SeedGenerator
random_seed_generator <-
-function (seed = NULL, ...)
+function (seed = NULL, name = NULL, ...)
{
args <- capture_args(list(seed = as_integer))
do.call(keras$random$SeedGenerator, args)
From 39955050fdd037f459b859b7a8b6f6d277ed9d20 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:32:58 -0400
Subject: [PATCH 03/38] (already accounted) upstream optimizer signature
changes
---
.tether/man/optimizer_adadelta.txt | 4 +++-
.tether/man/optimizer_adafactor.txt | 4 +++-
.tether/man/optimizer_adagrad.txt | 4 +++-
.tether/man/optimizer_adam.txt | 4 +++-
.tether/man/optimizer_adam_w.txt | 4 +++-
.tether/man/optimizer_adamax.txt | 4 +++-
.tether/man/optimizer_ftrl.txt | 4 +++-
.tether/man/optimizer_lion.txt | 4 +++-
.tether/man/optimizer_nadam.txt | 4 +++-
.tether/man/optimizer_rmsprop.txt | 3 ++-
.tether/man/optimizer_sgd.txt | 4 +++-
11 files changed, 32 insertions(+), 11 deletions(-)
diff --git a/.tether/man/optimizer_adadelta.txt b/.tether/man/optimizer_adadelta.txt
index b4ff6131f..828fab4b4 100644
--- a/.tether/man/optimizer_adadelta.txt
+++ b/.tether/man/optimizer_adadelta.txt
@@ -1,7 +1,7 @@
Help on class Adadelta in module keras.src.optimizers.adadelta:
class Adadelta(keras.src.optimizers.optimizer.Optimizer)
- | Adadelta(learning_rate=0.001, rho=0.95, epsilon=1e-07, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='adadelta', **kwargs)
+ | Adadelta(learning_rate=0.001, rho=0.95, epsilon=1e-07, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='adadelta', **kwargs)
|
| Optimizer that implements the Adadelta algorithm.
|
@@ -104,6 +104,8 @@ class Adadelta(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='adadelta',
| **kwargs
| )
diff --git a/.tether/man/optimizer_adafactor.txt b/.tether/man/optimizer_adafactor.txt
index 914695b73..79ae56551 100644
--- a/.tether/man/optimizer_adafactor.txt
+++ b/.tether/man/optimizer_adafactor.txt
@@ -1,7 +1,7 @@
Help on class Adafactor in module keras.src.optimizers.adafactor:
class Adafactor(keras.src.optimizers.optimizer.Optimizer)
- | Adafactor(learning_rate=0.001, beta_2_decay=-0.8, epsilon_1=1e-30, epsilon_2=0.001, clip_threshold=1.0, relative_step=True, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='adafactor', **kwargs)
+ | Adafactor(learning_rate=0.001, beta_2_decay=-0.8, epsilon_1=1e-30, epsilon_2=0.001, clip_threshold=1.0, relative_step=True, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='adafactor', **kwargs)
|
| Optimizer that implements the Adafactor algorithm.
|
@@ -109,6 +109,8 @@ class Adafactor(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='adafactor',
| **kwargs
| )
diff --git a/.tether/man/optimizer_adagrad.txt b/.tether/man/optimizer_adagrad.txt
index dc1fe43bd..bff3cdd86 100644
--- a/.tether/man/optimizer_adagrad.txt
+++ b/.tether/man/optimizer_adagrad.txt
@@ -1,7 +1,7 @@
Help on class Adagrad in module keras.src.optimizers.adagrad:
class Adagrad(keras.src.optimizers.optimizer.Optimizer)
- | Adagrad(learning_rate=0.001, initial_accumulator_value=0.1, epsilon=1e-07, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='adagrad', **kwargs)
+ | Adagrad(learning_rate=0.001, initial_accumulator_value=0.1, epsilon=1e-07, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='adagrad', **kwargs)
|
| Optimizer that implements the Adagrad algorithm.
|
@@ -98,6 +98,8 @@ class Adagrad(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='adagrad',
| **kwargs
| )
diff --git a/.tether/man/optimizer_adam.txt b/.tether/man/optimizer_adam.txt
index d073c54e9..25622c63e 100644
--- a/.tether/man/optimizer_adam.txt
+++ b/.tether/man/optimizer_adam.txt
@@ -1,7 +1,7 @@
Help on class Adam in module keras.src.optimizers.adam:
class Adam(keras.src.optimizers.optimizer.Optimizer)
- | Adam(learning_rate=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-07, amsgrad=False, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='adam', **kwargs)
+ | Adam(learning_rate=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-07, amsgrad=False, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='adam', **kwargs)
|
| Optimizer that implements the Adam algorithm.
|
@@ -108,6 +108,8 @@ class Adam(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='adam',
| **kwargs
| )
diff --git a/.tether/man/optimizer_adam_w.txt b/.tether/man/optimizer_adam_w.txt
index 715312199..ec6c92cd3 100644
--- a/.tether/man/optimizer_adam_w.txt
+++ b/.tether/man/optimizer_adam_w.txt
@@ -1,7 +1,7 @@
Help on class AdamW in module keras.src.optimizers.adamw:
class AdamW(keras.src.optimizers.adam.Adam)
- | AdamW(learning_rate=0.001, weight_decay=0.004, beta_1=0.9, beta_2=0.999, epsilon=1e-07, amsgrad=False, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='adamw', **kwargs)
+ | AdamW(learning_rate=0.001, weight_decay=0.004, beta_1=0.9, beta_2=0.999, epsilon=1e-07, amsgrad=False, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='adamw', **kwargs)
|
| Optimizer that implements the AdamW algorithm.
|
@@ -120,6 +120,8 @@ class AdamW(keras.src.optimizers.adam.Adam)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='adamw',
| **kwargs
| )
diff --git a/.tether/man/optimizer_adamax.txt b/.tether/man/optimizer_adamax.txt
index 8695e5872..cf944d82d 100644
--- a/.tether/man/optimizer_adamax.txt
+++ b/.tether/man/optimizer_adamax.txt
@@ -1,7 +1,7 @@
Help on class Adamax in module keras.src.optimizers.adamax:
class Adamax(keras.src.optimizers.optimizer.Optimizer)
- | Adamax(learning_rate=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-07, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='adamax', **kwargs)
+ | Adamax(learning_rate=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-07, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='adamax', **kwargs)
|
| Optimizer that implements the Adamax algorithm.
|
@@ -118,6 +118,8 @@ class Adamax(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='adamax',
| **kwargs
| )
diff --git a/.tether/man/optimizer_ftrl.txt b/.tether/man/optimizer_ftrl.txt
index 902081514..38b53c80b 100644
--- a/.tether/man/optimizer_ftrl.txt
+++ b/.tether/man/optimizer_ftrl.txt
@@ -1,7 +1,7 @@
Help on class Ftrl in module keras.src.optimizers.ftrl:
class Ftrl(keras.src.optimizers.optimizer.Optimizer)
- | Ftrl(learning_rate=0.001, learning_rate_power=-0.5, initial_accumulator_value=0.1, l1_regularization_strength=0.0, l2_regularization_strength=0.0, l2_shrinkage_regularization_strength=0.0, beta=0.0, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='ftrl', **kwargs)
+ | Ftrl(learning_rate=0.001, learning_rate_power=-0.5, initial_accumulator_value=0.1, l1_regularization_strength=0.0, l2_regularization_strength=0.0, l2_shrinkage_regularization_strength=0.0, beta=0.0, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='ftrl', **kwargs)
|
| Optimizer that implements the FTRL algorithm.
|
@@ -144,6 +144,8 @@ class Ftrl(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='ftrl',
| **kwargs
| )
diff --git a/.tether/man/optimizer_lion.txt b/.tether/man/optimizer_lion.txt
index 1e37a3f92..f7f4b3502 100644
--- a/.tether/man/optimizer_lion.txt
+++ b/.tether/man/optimizer_lion.txt
@@ -1,7 +1,7 @@
Help on class Lion in module keras.src.optimizers.lion:
class Lion(keras.src.optimizers.optimizer.Optimizer)
- | Lion(learning_rate=0.001, beta_1=0.9, beta_2=0.99, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='lion', **kwargs)
+ | Lion(learning_rate=0.001, beta_1=0.9, beta_2=0.99, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='lion', **kwargs)
|
| Optimizer that implements the Lion algorithm.
|
@@ -107,6 +107,8 @@ class Lion(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='lion',
| **kwargs
| )
diff --git a/.tether/man/optimizer_nadam.txt b/.tether/man/optimizer_nadam.txt
index 27e0a61fa..5890b8c9c 100644
--- a/.tether/man/optimizer_nadam.txt
+++ b/.tether/man/optimizer_nadam.txt
@@ -1,7 +1,7 @@
Help on class Nadam in module keras.src.optimizers.nadam:
class Nadam(keras.src.optimizers.optimizer.Optimizer)
- | Nadam(learning_rate=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-07, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='nadam', **kwargs)
+ | Nadam(learning_rate=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-07, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='nadam', **kwargs)
|
| Optimizer that implements the Nadam algorithm.
|
@@ -102,6 +102,8 @@ class Nadam(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='nadam',
| **kwargs
| )
diff --git a/.tether/man/optimizer_rmsprop.txt b/.tether/man/optimizer_rmsprop.txt
index 07ecc809d..3ffb2b8b2 100644
--- a/.tether/man/optimizer_rmsprop.txt
+++ b/.tether/man/optimizer_rmsprop.txt
@@ -118,7 +118,8 @@ class RMSprop(keras.src.optimizers.optimizer.Optimizer)
| global_clipnorm=None,
| use_ema=False,
| ema_momentum=0.99,
- | ema_overwrite_frequency=100,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='rmsprop',
| **kwargs
| )
diff --git a/.tether/man/optimizer_sgd.txt b/.tether/man/optimizer_sgd.txt
index accb1b3b8..ec74522ba 100644
--- a/.tether/man/optimizer_sgd.txt
+++ b/.tether/man/optimizer_sgd.txt
@@ -1,7 +1,7 @@
Help on class SGD in module keras.src.optimizers.sgd:
class SGD(keras.src.optimizers.optimizer.Optimizer)
- | SGD(learning_rate=0.01, momentum=0.0, nesterov=False, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, name='SGD', **kwargs)
+ | SGD(learning_rate=0.01, momentum=0.0, nesterov=False, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='SGD', **kwargs)
|
| Gradient descent (with momentum) optimizer.
|
@@ -106,6 +106,8 @@ class SGD(keras.src.optimizers.optimizer.Optimizer)
| use_ema=False,
| ema_momentum=0.99,
| ema_overwrite_frequency=None,
+ | loss_scale_factor=None,
+ | gradient_accumulation_steps=None,
| name='SGD',
| **kwargs
| )
From 1b12c09069cb8e48e862ce430816d513bb1e2bda Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:35:11 -0400
Subject: [PATCH 04/38] new arg default:
`optimizer_rmsprop(ema_overwrite_frequency = NULL)`
---
.tether/man/optimizer_rmsprop.txt | 3 ++-
R/optimizers.R | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/.tether/man/optimizer_rmsprop.txt b/.tether/man/optimizer_rmsprop.txt
index 3ffb2b8b2..a6a84fe10 100644
--- a/.tether/man/optimizer_rmsprop.txt
+++ b/.tether/man/optimizer_rmsprop.txt
@@ -1,7 +1,7 @@
Help on class RMSprop in module keras.src.optimizers.rmsprop:
class RMSprop(keras.src.optimizers.optimizer.Optimizer)
- | RMSprop(learning_rate=0.001, rho=0.9, momentum=0.0, epsilon=1e-07, centered=False, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=100, name='rmsprop', **kwargs)
+ | RMSprop(learning_rate=0.001, rho=0.9, momentum=0.0, epsilon=1e-07, centered=False, weight_decay=None, clipnorm=None, clipvalue=None, global_clipnorm=None, use_ema=False, ema_momentum=0.99, ema_overwrite_frequency=None, loss_scale_factor=None, gradient_accumulation_steps=None, name='rmsprop', **kwargs)
|
| Optimizer that implements the RMSprop algorithm.
|
@@ -118,6 +118,7 @@ class RMSprop(keras.src.optimizers.optimizer.Optimizer)
| global_clipnorm=None,
| use_ema=False,
| ema_momentum=0.99,
+ | ema_overwrite_frequency=None,
| loss_scale_factor=None,
| gradient_accumulation_steps=None,
| name='rmsprop',
diff --git a/R/optimizers.R b/R/optimizers.R
index 4d77b1a1b..c6d6f86ed 100644
--- a/R/optimizers.R
+++ b/R/optimizers.R
@@ -1381,7 +1381,7 @@ optimizer_rmsprop <-
function (learning_rate = 0.001, rho = 0.9, momentum = 0, epsilon = 1e-07,
centered = FALSE, weight_decay = NULL, clipnorm = NULL, clipvalue = NULL,
global_clipnorm = NULL, use_ema = FALSE, ema_momentum = 0.99,
- ema_overwrite_frequency = 100L, name = "rmsprop", ..., loss_scale_factor = NULL,
+ ema_overwrite_frequency = NULL, name = "rmsprop", ..., loss_scale_factor = NULL,
gradient_accumulation_steps = NULL)
{
args <- capture_args(list(ema_overwrite_frequency = as_integer,
From cf18f4a9ecbb03d802000e8ce26aab0007f06a67 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:40:33 -0400
Subject: [PATCH 05/38] new args: `op_nan_to_num(nan, posinf, neginf)`
---
.tether/man/op_nan_to_num.txt | 13 ++++++++++++-
R/ops.R | 21 +++++++++++++++++++--
2 files changed, 31 insertions(+), 3 deletions(-)
diff --git a/.tether/man/op_nan_to_num.txt b/.tether/man/op_nan_to_num.txt
index ae3a869e2..703a81860 100644
--- a/.tether/man/op_nan_to_num.txt
+++ b/.tether/man/op_nan_to_num.txt
@@ -1,10 +1,21 @@
__signature__
-keras.ops.nan_to_num(x)
+keras.ops.nan_to_num(
+ x,
+ nan=0.0,
+ posinf=None,
+ neginf=None
+)
__doc__
Replace NaN with zero and infinity with large finite numbers.
Args:
x: Input data.
+ nan: Optional float or int. Value to replace `NaN` entries with.
+ posinf: Optional float or int.
+ Value to replace positive infinity with.
+ neginf: Optional float or int.
+ Value to replace negative infinity with.
Returns:
`x`, with non-finite values replaced.
+
diff --git a/R/ops.R b/R/ops.R
index fb34d9796..24a1a2389 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -5644,6 +5644,21 @@ keras$ops$multiply(x1, x2)
#' @param x
#' Input data.
#'
+#' @param nan
+#' Optional float or int. Value to replace `NaN` entries with.
+#'
+#' @param posinf
+#' Optional float or int. Value to replace positive infinity with.
+#'
+#' @param neginf
+#' Optional float or int. Value to replace negative infinity with.
+#'
+#' ```{r}
+#' (x <- op_convert_to_tensor(c(1, NaN, -Inf, Inf)))
+#' op_nan_to_num(x)
+#' op_nan_to_num(x, nan = -1, posinf = 2, neginf = -2)
+#' ```
+#'
#' @export
#' @family numpy ops
#' @family ops
@@ -5652,8 +5667,10 @@ keras$ops$multiply(x1, x2)
# +
#' @tether keras.ops.nan_to_num
op_nan_to_num <-
-function (x)
-keras$ops$nan_to_num(x)
+function (x, nan = 0, posinf = NULL, neginf = NULL) {
+ args <- capture_args()
+ do.call(keras$ops$nan_to_num, args)
+}
#' Return the number of dimensions of a tensor.
From 69126aed29b8517aac9373e3b945ae5cfc4dd79c Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:41:28 -0400
Subject: [PATCH 06/38] formatting fix
---
.tether/man/op_min.txt | 5 +++--
R/ops.R | 4 ++--
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/.tether/man/op_min.txt b/.tether/man/op_min.txt
index 59460e14c..7f019437c 100644
--- a/.tether/man/op_min.txt
+++ b/.tether/man/op_min.txt
@@ -13,8 +13,9 @@ Args:
axis: Axis or axes along which to operate. By default, flattened input
is used.
keepdims: If this is set to `True`, the axes which are reduced are left
- in the result as dimensions with size one. Defaults to`False`.
- initial: The maximum value of an output element. Defaults to`None`.
+ in the result as dimensions with size one. Defaults to `False`.
+ initial: The maximum value of an output element. Defaults to `None`.
Returns:
Minimum of `x`.
+
diff --git a/R/ops.R b/R/ops.R
index 24a1a2389..a689f7ae4 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -5499,10 +5499,10 @@ function (..., indexing = "xy")
#'
#' @param keepdims
#' If this is set to `TRUE`, the axes which are reduced are left
-#' in the result as dimensions with size one. Defaults to`FALSE`.
+#' in the result as dimensions with size one. Defaults to `FALSE`.
#'
#' @param initial
-#' The maximum value of an output element. Defaults to`NULL`.
+#' The maximum value of an output element. Defaults to `NULL`.
#'
#' @export
#' @aliases op_amin
From 948c8831df34c4c25d3ba92836a5b530749788df Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:45:11 -0400
Subject: [PATCH 07/38] doc formatting fixes; upstream examples require
`keras.src` imports now
---
.tether/man/op_any.txt | 3 ++-
.tether/man/op_diag.txt | 3 ++-
.tether/man/op_diagonal.txt | 3 ++-
.tether/man/op_diff.txt | 3 ++-
.tether/man/op_einsum.txt | 3 ++-
.tether/man/op_linspace.txt | 3 ++-
.tether/man/op_logspace.txt | 3 ++-
.tether/man/op_max.txt | 5 +++--
.tether/man/op_meshgrid.txt | 2 +-
R/ops.R | 8 ++++----
10 files changed, 22 insertions(+), 14 deletions(-)
diff --git a/.tether/man/op_any.txt b/.tether/man/op_any.txt
index 26feb18da..9850a9ce0 100644
--- a/.tether/man/op_any.txt
+++ b/.tether/man/op_any.txt
@@ -16,7 +16,7 @@ Args:
for the last to the first axis.
keepdims: If `True`, axes which are reduced are left in the result as
dimensions with size one. With this option, the result will
- broadcast correctly against the input array. Defaults to`False`.
+ broadcast correctly against the input array. Defaults to `False`.
Returns:
The tensor containing the logical OR reduction over the `axis`.
@@ -34,3 +34,4 @@ array([ True True], shape=(2,), dtype=bool)
>>> x = keras.ops.convert_to_tensor([[True, False], [True, True]])
>>> keras.ops.all(x, keepdims=True)
array([[False]], shape=(1, 1), dtype=bool)
+
diff --git a/.tether/man/op_diag.txt b/.tether/man/op_diag.txt
index e3d8e5f11..875976e09 100644
--- a/.tether/man/op_diag.txt
+++ b/.tether/man/op_diag.txt
@@ -14,7 +14,7 @@ Returns:
The extracted diagonal or constructed diagonal tensor.
Examples:
->>> from keras import ops
+>>> from keras.src import ops
>>> x = ops.arange(9).reshape((3, 3))
>>> x
array([[0, 1, 2],
@@ -32,3 +32,4 @@ array([3, 7])
array([[0, 0, 0],
[0, 4, 0],
[0, 0, 8]])
+
diff --git a/.tether/man/op_diagonal.txt b/.tether/man/op_diagonal.txt
index 6fb5dca16..6aa941ac5 100644
--- a/.tether/man/op_diagonal.txt
+++ b/.tether/man/op_diagonal.txt
@@ -32,7 +32,7 @@ Returns:
Tensor of diagonals.
Examples:
->>> from keras import ops
+>>> from keras.src import ops
>>> x = ops.arange(4).reshape((2, 2))
>>> x
array([[0, 1],
@@ -51,3 +51,4 @@ array([[[0, 1],
>>> x.diagonal(0, 0, 1)
array([[0, 6],
[1, 7]])
+
diff --git a/.tether/man/op_diff.txt b/.tether/man/op_diff.txt
index 4d265932b..37f439e67 100644
--- a/.tether/man/op_diff.txt
+++ b/.tether/man/op_diff.txt
@@ -21,7 +21,7 @@ Returns:
Tensor of diagonals.
Examples:
->>> from keras import ops
+>>> from keras.src import ops
>>> x = ops.convert_to_tensor([1, 2, 4, 7, 0])
>>> ops.diff(x)
array([ 1, 2, 3, -7])
@@ -34,3 +34,4 @@ array([[2, 3, 4],
[5, 1, 2]])
>>> ops.diff(x, axis=0)
array([[-1, 2, 0, -2]])
+
diff --git a/.tether/man/op_einsum.txt b/.tether/man/op_einsum.txt
index 7fce8b839..9591c8a54 100644
--- a/.tether/man/op_einsum.txt
+++ b/.tether/man/op_einsum.txt
@@ -15,7 +15,7 @@ Returns:
The calculation based on the Einstein summation convention.
Example:
->>> from keras import ops
+>>> from keras.src import ops
>>> a = ops.arange(25).reshape(5, 5)
>>> b = ops.arange(5)
>>> c = ops.arange(6).reshape(2, 3)
@@ -82,3 +82,4 @@ array([ 30, 80, 130, 180, 230])
array([ 30, 80, 130, 180, 230])
>>> ops.einsum("...j, j", a, b)
array([ 30, 80, 130, 180, 230])
+
diff --git a/.tether/man/op_linspace.txt b/.tether/man/op_linspace.txt
index d5521935d..bf1443531 100644
--- a/.tether/man/op_linspace.txt
+++ b/.tether/man/op_linspace.txt
@@ -25,7 +25,7 @@ Args:
num: Number of samples to generate. Defaults to `50`. Must be
non-negative.
endpoint: If `True`, `stop` is the last sample. Otherwise, it is
- not included. Defaults to`True`.
+ not included. Defaults to `True`.
retstep: If `True`, return `(samples, step)`, where `step` is the
spacing between samples.
dtype: The type of the output tensor.
@@ -38,3 +38,4 @@ Note:
Returns:
A tensor of evenly spaced numbers.
If `retstep` is `True`, returns `(samples, step)`
+
diff --git a/.tether/man/op_logspace.txt b/.tether/man/op_logspace.txt
index f126ebe40..34d457b49 100644
--- a/.tether/man/op_logspace.txt
+++ b/.tether/man/op_logspace.txt
@@ -22,7 +22,7 @@ Args:
are returned.
num: Number of samples to generate. Defaults to `50`.
endpoint: If `True`, `stop` is the last sample. Otherwise, it is not
- included. Defaults to`True`.
+ included. Defaults to `True`.
base: The base of the log space. Defaults to `10`.
dtype: The type of the output tensor.
axis: The axis in the result to store the samples. Relevant only
@@ -33,3 +33,4 @@ Note:
Returns:
A tensor of evenly spaced samples on a log scale.
+
diff --git a/.tether/man/op_max.txt b/.tether/man/op_max.txt
index fa1b71dcb..5fde2f88e 100644
--- a/.tether/man/op_max.txt
+++ b/.tether/man/op_max.txt
@@ -13,8 +13,9 @@ Args:
axis: Axis or axes along which to operate. By default, flattened input
is used.
keepdims: If this is set to `True`, the axes which are reduced are left
- in the result as dimensions with size one. Defaults to`False`.
- initial: The minimum value of an output element. Defaults to`None`.
+ in the result as dimensions with size one. Defaults to `False`.
+ initial: The minimum value of an output element. Defaults to `None`.
Returns:
Maximum of `x`.
+
diff --git a/.tether/man/op_meshgrid.txt b/.tether/man/op_meshgrid.txt
index 237aa6ecf..eb6a03c73 100644
--- a/.tether/man/op_meshgrid.txt
+++ b/.tether/man/op_meshgrid.txt
@@ -17,7 +17,7 @@ Returns:
Sequence of N tensors.
Example:
->>> from keras import ops
+>>> from keras.src import ops
>>> x = ops.array([1, 2, 3])
>>> y = ops.array([4, 5, 6])
diff --git a/R/ops.R b/R/ops.R
index a689f7ae4..fdef048f8 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -4956,7 +4956,7 @@ keras$ops$less_equal(x1, x2)
#'
#' @param endpoint
#' If `TRUE`, `stop` is the last sample. Otherwise, it is
-#' not included. Defaults to`TRUE`.
+#' not included. Defaults to `TRUE`.
#'
#' @param retstep
#' If `TRUE`, return `(samples, step)`, where `step` is the
@@ -5224,7 +5224,7 @@ keras$ops$logical_xor(x1, x2)
#'
#' @param endpoint
#' If `TRUE`, `stop` is the last sample. Otherwise, it is not
-#' included. Defaults to`TRUE`.
+#' included. Defaults to `TRUE`.
#'
#' @param base
#' The base of the log space. Defaults to `10`.
@@ -5310,10 +5310,10 @@ keras$ops$matmul(x1, x2)
#'
#' @param keepdims
#' If this is set to `TRUE`, the axes which are reduced are left
-#' in the result as dimensions with size one. Defaults to`FALSE`.
+#' in the result as dimensions with size one. Defaults to `FALSE`.
#'
#' @param initial
-#' The minimum value of an output element. Defaults to`NULL`.
+#' The minimum value of an output element. Defaults to `NULL`.
#'
#' @export
#' @aliases op_amax
From 8cb7e03cf957b14e0ec19c1f1c1c8d0279d44053 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:49:37 -0400
Subject: [PATCH 08/38] new args: `op_image_resize(crop_to_aspect_ratio,
pad_to_aspect_ratio, fill_mode, fill_value)
---
.tether/man/op_image_resize.txt | 21 +++++++++++++++++++++
R/ops-image.R | 26 ++++++++++++++++++++++++++
2 files changed, 47 insertions(+)
diff --git a/.tether/man/op_image_resize.txt b/.tether/man/op_image_resize.txt
index 7acd90d21..a57a6acb0 100644
--- a/.tether/man/op_image_resize.txt
+++ b/.tether/man/op_image_resize.txt
@@ -4,6 +4,10 @@ keras.ops.image.resize(
size,
interpolation='bilinear',
antialias=False,
+ crop_to_aspect_ratio=False,
+ pad_to_aspect_ratio=False,
+ fill_mode='constant',
+ fill_value=0.0,
data_format='channels_last'
)
__doc__
@@ -16,6 +20,22 @@ Args:
`"bilinear"`, and `"bicubic"`. Defaults to `"bilinear"`.
antialias: Whether to use an antialiasing filter when downsampling an
image. Defaults to `False`.
+ crop_to_aspect_ratio: If `True`, resize the images without aspect
+ ratio distortion. When the original aspect ratio differs
+ from the target aspect ratio, the output image will be
+ cropped so as to return the
+ largest possible window in the image (of size `(height, width)`)
+ that matches the target aspect ratio. By default
+ (`crop_to_aspect_ratio=False`), aspect ratio may not be preserved.
+ pad_to_aspect_ratio: If `True`, pad the images without aspect
+ ratio distortion. When the original aspect ratio differs
+ from the target aspect ratio, the output image will be
+ evenly padded on the short side.
+ fill_mode: When using `pad_to_aspect_ratio=True`, padded areas
+ are filled according to the given mode. Only `"constant"` is
+ supported at this time
+ (fill with constant value, equal to `fill_value`).
+ fill_value: Float. Padding value to use when `pad_to_aspect_ratio=True`.
data_format: string, either `"channels_last"` or `"channels_first"`.
The ordering of the dimensions in the inputs. `"channels_last"`
corresponds to inputs with shape `(batch, height, width, channels)`
@@ -45,3 +65,4 @@ Examples:
... data_format="channels_first")
>>> y.shape
(2, 3, 2, 2)
+
diff --git a/R/ops-image.R b/R/ops-image.R
index 4f89d3f32..eb9cdb310 100644
--- a/R/ops-image.R
+++ b/R/ops-image.R
@@ -339,6 +339,30 @@ function (images, top_padding = NULL, left_padding = NULL, target_height = NULL,
#' Whether to use an antialiasing filter when downsampling an
#' image. Defaults to `FALSE`.
#'
+#' @param crop_to_aspect_ratio
+#' If `TRUE`, resize the images without aspect
+#' ratio distortion. When the original aspect ratio differs
+#' from the target aspect ratio, the output image will be
+#' cropped so as to return the
+#' largest possible window in the image (of size `(height, width)`)
+#' that matches the target aspect ratio. By default
+#' (`crop_to_aspect_ratio=FALSE`), aspect ratio may not be preserved.
+#'
+#' @param pad_to_aspect_ratio
+#' If `TRUE`, pad the images without aspect
+#' ratio distortion. When the original aspect ratio differs
+#' from the target aspect ratio, the output image will be
+#' evenly padded on the short side.
+#'
+#' @param fill_mode
+#' When using `pad_to_aspect_ratio=TRUE`, padded areas
+#' are filled according to the given mode. Only `"constant"` is
+#' supported at this time
+#' (fill with constant value, equal to `fill_value`).
+#'
+#' @param fill_value
+#' Float. Padding value to use when `pad_to_aspect_ratio=TRUE`.
+#'
#' @param data_format
#' string, either `"channels_last"` or `"channels_first"`.
#' The ordering of the dimensions in the inputs. `"channels_last"`
@@ -359,6 +383,8 @@ function (images, top_padding = NULL, left_padding = NULL, target_height = NULL,
#' @tether keras.ops.image.resize
op_image_resize <-
function (image, size, interpolation = "bilinear", antialias = FALSE,
+ crop_to_aspect_ratio = FALSE, pad_to_aspect_ratio = FALSE,
+ fill_mode = "constant", fill_value = 0,
data_format = "channels_last")
{
args <- capture_args(list(size = as_integer))
From 1273daabf80c24c6491ffcb61d4c33fae0927925 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:57:58 -0400
Subject: [PATCH 09/38] new arg: `op_argmax(keepdims)` and
`op_argmin(keepdims)`
---
.tether/man/op_argmax.txt | 9 ++++++++-
.tether/man/op_argmin.txt | 9 ++++++++-
R/ops.R | 12 ++++++++++--
3 files changed, 26 insertions(+), 4 deletions(-)
diff --git a/.tether/man/op_argmax.txt b/.tether/man/op_argmax.txt
index 6f3046c76..85d8cbff0 100644
--- a/.tether/man/op_argmax.txt
+++ b/.tether/man/op_argmax.txt
@@ -1,5 +1,9 @@
__signature__
-keras.ops.argmax(x, axis=None)
+keras.ops.argmax(
+ x,
+ axis=None,
+ keepdims=False
+)
__doc__
Returns the indices of the maximum values along an axis.
@@ -7,6 +11,8 @@ Args:
x: Input tensor.
axis: By default, the index is into the flattened tensor, otherwise
along the specified axis.
+ keepdims: If this is set to `True`, the axes which are reduced are left
+ in the result as dimensions with size one. Defaults to `False`.
Returns:
Tensor of indices. It has the same shape as `x`, with the dimension
@@ -23,3 +29,4 @@ array(5, dtype=int32)
array([1, 1, 1], dtype=int32)
>>> keras.ops.argmax(x, axis=1)
array([2, 2], dtype=int32)
+
diff --git a/.tether/man/op_argmin.txt b/.tether/man/op_argmin.txt
index 83cc19b5c..89e18f534 100644
--- a/.tether/man/op_argmin.txt
+++ b/.tether/man/op_argmin.txt
@@ -1,5 +1,9 @@
__signature__
-keras.ops.argmin(x, axis=None)
+keras.ops.argmin(
+ x,
+ axis=None,
+ keepdims=False
+)
__doc__
Returns the indices of the minium values along an axis.
@@ -7,6 +11,8 @@ Args:
x: Input tensor.
axis: By default, the index is into the flattened tensor, otherwise
along the specified axis.
+ keepdims: If this is set to `True`, the axes which are reduced are left
+ in the result as dimensions with size one. Defaults to `False`.
Returns:
Tensor of indices. It has the same shape as `x`, with the dimension
@@ -23,3 +29,4 @@ array(0, dtype=int32)
array([0, 0, 0], dtype=int32)
>>> keras.ops.argmin(x, axis=1)
array([0, 0], dtype=int32)
+
diff --git a/R/ops.R b/R/ops.R
index fdef048f8..ebcc5cda6 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -3313,6 +3313,10 @@ keras$ops$arctanh(x)
#' By default, the index is into the flattened tensor, otherwise
#' along the specified axis.
#'
+#' @param keepdims
+#' If this is set to `TRUE`, the axes which are reduced are left
+#' in the result as dimensions with size one. Defaults to `FALSE`.
+#'
#' @export
#' @family numpy ops
#' @family ops
@@ -3321,7 +3325,7 @@ keras$ops$arctanh(x)
# +
#' @tether keras.ops.argmax
op_argmax <-
-function (x, axis = NULL)
+function (x, axis = NULL, keepdims = FALSE)
{
args <- capture_args(list(axis = as_axis))
do.call(keras$ops$argmax, args)
@@ -3356,6 +3360,10 @@ function (x, axis = NULL)
#' By default, the index is into the flattened tensor, otherwise
#' along the specified axis.
#'
+#' @param keepdims
+#' If this is set to `TRUE`, the axes which are reduced are left
+#' in the result as dimensions with size one. Defaults to `FALSE`.
+#'
#' @export
#' @family numpy ops
#' @family ops
@@ -3364,7 +3372,7 @@ function (x, axis = NULL)
# +
#' @tether keras.ops.argmin
op_argmin <-
-function (x, axis = NULL)
+function (x, axis = NULL, keepdims = FALSE)
{
args <- capture_args(list(axis = as_axis))
do.call(keras$ops$argmin, args)
From dacea4f9ded5277cdad02a14fd150c8a6553bed5 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 09:58:24 -0400
Subject: [PATCH 10/38] formatting fix
---
.tether/man/op_all.txt | 3 ++-
R/ops.R | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/.tether/man/op_all.txt b/.tether/man/op_all.txt
index 70d4a2019..e4bf75d30 100644
--- a/.tether/man/op_all.txt
+++ b/.tether/man/op_all.txt
@@ -16,7 +16,7 @@ Args:
for the last to the first axis.
keepdims: If `True`, axes which are reduced are left in the result as
dimensions with size one. With this option, the result will
- broadcast correctly against the input array. Defaults to`False`.
+ broadcast correctly against the input array. Defaults to `False`.
Returns:
The tensor containing the logical AND reduction over the `axis`.
@@ -34,3 +34,4 @@ array([ True False], shape=(2,), dtype=bool)
>>> x = keras.ops.convert_to_tensor([[True, False], [True, True]])
>>> keras.ops.all(x, keepdims=True)
array([[False]], shape=(1, 1), dtype=bool)
+
diff --git a/R/ops.R b/R/ops.R
index ebcc5cda6..f2bbd526f 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -2773,7 +2773,7 @@ keras$ops$add(x1, x2)
#' @param keepdims
#' If `TRUE`, axes which are reduced are left in the result as
#' dimensions with size one. With this option, the result will
-#' broadcast correctly against the input array. Defaults to`FALSE`.
+#' broadcast correctly against the input array. Defaults to `FALSE`.
#'
#' @export
#' @family numpy ops
From b678ea7d6acb2bf1e0ce5cbd1c45eaae3e854dad Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:02:19 -0400
Subject: [PATCH 11/38] doc: `metric_kl_divergence()` clips inputs to `[0, 1]`
range.
---
.tether/man/metric_kl_divergence.txt | 4 ++++
R/metrics.R | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/.tether/man/metric_kl_divergence.txt b/.tether/man/metric_kl_divergence.txt
index 35ec84e7e..4af570fa0 100644
--- a/.tether/man/metric_kl_divergence.txt
+++ b/.tether/man/metric_kl_divergence.txt
@@ -12,6 +12,10 @@ class KLDivergence(keras.src.metrics.reduction_metrics.MeanMetricWrapper)
| metric = y_true * log(y_true / y_pred)
| ```
|
+ | `y_true` and `y_pred` are expected to be probability
+ | distributions, with values between 0 and 1. They will get
+ | clipped to the `[0, 1]` range.
+ |
| Args:
| name: (Optional) string name of the metric instance.
| dtype: (Optional) data type of the metric result.
diff --git a/R/metrics.R b/R/metrics.R
index a197d1c4e..6706b0b2e 100644
--- a/R/metrics.R
+++ b/R/metrics.R
@@ -2760,6 +2760,10 @@ function (y_true, y_pred, from_logits = FALSE, label_smoothing = 0,
#' loss <- y_true * log(y_true / y_pred)
#' ```
#'
+#' `y_true` and `y_pred` are expected to be probability
+#' distributions, with values between 0 and 1. They will get
+#' clipped to the `[0, 1]` range.
+#'
#' # Usage
#' Standalone usage:
#'
From fa250907b636ce407d15be3c3f580fc7ebd2a9b9 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:03:32 -0400
Subject: [PATCH 12/38] doc: `loss_kl_divergence()` clips inputs to `[0, 1]`
range
---
.tether/man/loss_kl_divergence.txt | 5 +++++
R/losses.R | 4 ++++
2 files changed, 9 insertions(+)
diff --git a/.tether/man/loss_kl_divergence.txt b/.tether/man/loss_kl_divergence.txt
index 492649cea..55eb40469 100644
--- a/.tether/man/loss_kl_divergence.txt
+++ b/.tether/man/loss_kl_divergence.txt
@@ -11,6 +11,10 @@ class KLDivergence(LossFunctionWrapper)
| loss = y_true * log(y_true / y_pred)
| ```
|
+ | `y_true` and `y_pred` are expected to be probability
+ | distributions, with values between 0 and 1. They will get
+ | clipped to the `[0, 1]` range.
+ |
| Args:
| reduction: Type of reduction to apply to the loss. In almost all cases
| this should be `"sum_over_batch_size"`.
@@ -34,3 +38,4 @@ class KLDivergence(LossFunctionWrapper)
|
| get_config(self)
|
+
diff --git a/R/losses.R b/R/losses.R
index 19984252b..5ea29205d 100644
--- a/R/losses.R
+++ b/R/losses.R
@@ -944,6 +944,10 @@ function (y_true, y_pred, delta = 1, ..., reduction = "sum_over_batch_size",
#' loss <- y_true * log(y_true / y_pred)
#' ```
#'
+#' `y_true` and `y_pred` are expected to be probability
+#' distributions, with values between 0 and 1. They will get
+#' clipped to the `[0, 1]` range.
+#'
#' # Examples
#' ```{r}
#' y_true <- random_uniform(c(2, 3), 0, 2)
From f4fd4fcdd2257a147bf2d50b16877b8194479ddf Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:06:56 -0400
Subject: [PATCH 13/38] new `Layer()` attrs: `metrics`, `dtype_policy`
---
.tether/man/Layer.txt | 5 +++++
R/Layer.R | 5 +++++
2 files changed, 10 insertions(+)
diff --git a/.tether/man/Layer.txt b/.tether/man/Layer.txt
index 376926827..db0e84e96 100644
--- a/.tether/man/Layer.txt
+++ b/.tether/man/Layer.txt
@@ -442,6 +442,9 @@ class Layer(keras.src.backend.tensorflow.layer.TFLayer, keras.src.ops.operation.
| losses
| List of scalar losses from `add_loss`, regularizers and sublayers.
|
+ | metrics
+ | List of all metrics.
+ |
| metrics_variables
| List of all metric variables.
|
@@ -488,6 +491,8 @@ class Layer(keras.src.backend.tensorflow.layer.TFLayer, keras.src.ops.operation.
| ----------------------------------------------------------------------
| Data descriptors defined here:
|
+ | dtype_policy
+ |
| input_spec
|
| supports_masking
diff --git a/R/Layer.R b/R/Layer.R
index 3962b16e3..0eed99e4e 100644
--- a/R/Layer.R
+++ b/R/Layer.R
@@ -505,6 +505,9 @@
#' * `losses`
#' List of scalar losses from `add_loss()`, regularizers and sublayers.
#'
+#' * `metrics`
+#' List of all metrics.
+#'
#' * `metrics_variables`
#' List of all metric variables.
#'
@@ -568,6 +571,8 @@
#'
#' # Data descriptors (Attributes):
#'
+#' * `dtype_policy`
+#'
#' * `input_spec`
#'
#' * `supports_masking`
From df13a3ff9dbdad5aa22bb3bbad21741ea05a8e2a Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:08:36 -0400
Subject: [PATCH 14/38] upstream examples now `import keras.src`
---
.tether/man/layer_dense.txt | 5 +++++
.tether/man/layer_einsum_dense.txt | 5 +++++
.tether/man/layer_embedding.txt | 5 +++++
.tether/man/layer_rnn.txt | 4 ++--
.tether/man/layer_torch_module_wrapper.txt | 2 +-
5 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/.tether/man/layer_dense.txt b/.tether/man/layer_dense.txt
index 130f7fc9e..8018b89d2 100644
--- a/.tether/man/layer_dense.txt
+++ b/.tether/man/layer_dense.txt
@@ -138,4 +138,9 @@ class Dense(keras.src.layers.layer.Layer)
|
| kernel
|
+ | ----------------------------------------------------------------------
+ | Data and other attributes defined here:
+ |
+ | QUANTIZATION_MODE_ERROR_TEMPLATE = "Invalid quantization mode. Expecte...
+ |
diff --git a/.tether/man/layer_einsum_dense.txt b/.tether/man/layer_einsum_dense.txt
index cd8daffaf..cc8386f3c 100644
--- a/.tether/man/layer_einsum_dense.txt
+++ b/.tether/man/layer_einsum_dense.txt
@@ -177,4 +177,9 @@ class EinsumDense(keras.src.layers.layer.Layer)
|
| kernel
|
+ | ----------------------------------------------------------------------
+ | Data and other attributes defined here:
+ |
+ | QUANTIZATION_MODE_ERROR_TEMPLATE = "Invalid quantization mode. Expecte...
+ |
diff --git a/.tether/man/layer_embedding.txt b/.tether/man/layer_embedding.txt
index b3fa2edcd..5eb22cca8 100644
--- a/.tether/man/layer_embedding.txt
+++ b/.tether/man/layer_embedding.txt
@@ -142,4 +142,9 @@ class Embedding(keras.src.layers.layer.Layer)
|
| embeddings
|
+ | ----------------------------------------------------------------------
+ | Data and other attributes defined here:
+ |
+ | QUANTIZATION_MODE_ERROR_TEMPLATE = "Invalid quantization mode. Expecte...
+ |
diff --git a/.tether/man/layer_rnn.txt b/.tether/man/layer_rnn.txt
index 9905f5278..79b0e334c 100644
--- a/.tether/man/layer_rnn.txt
+++ b/.tether/man/layer_rnn.txt
@@ -125,8 +125,8 @@ class RNN(keras.src.layers.layer.Layer)
| Examples:
|
| ```python
- | from keras.layers import RNN
- | from keras import ops
+ | from keras.src.layers import RNN
+ | from keras.src import ops
|
| # First, let's define a RNN Cell, as a layer subclass.
| class MinimalRNNCell(keras.layers.Layer):
diff --git a/.tether/man/layer_torch_module_wrapper.txt b/.tether/man/layer_torch_module_wrapper.txt
index 0c91aba34..e1a1ffe96 100644
--- a/.tether/man/layer_torch_module_wrapper.txt
+++ b/.tether/man/layer_torch_module_wrapper.txt
@@ -26,7 +26,7 @@ class TorchModuleWrapper(keras.src.layers.layer.Layer)
| import torch.nn.functional as F
|
| import keras
- | from keras.layers import TorchModuleWrapper
+ | from keras.src.layers import TorchModuleWrapper
|
| class Classifier(keras.Model):
| def __init__(self, **kwargs):
From ba289fbdbe6722ded0ca712c114c012982ee44d3 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:09:37 -0400
Subject: [PATCH 15/38] doc tweak `layer_random_zoom`
---
.tether/man/layer_random_zoom.txt | 2 +-
R/layers-preprocessing.R | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.tether/man/layer_random_zoom.txt b/.tether/man/layer_random_zoom.txt
index 5676b4dbf..f67ab391a 100644
--- a/.tether/man/layer_random_zoom.txt
+++ b/.tether/man/layer_random_zoom.txt
@@ -65,7 +65,7 @@ class RandomZoom(keras.src.layers.preprocessing.tf_data_layer.TFDataLayer)
| interpolation: Interpolation mode. Supported values: `"nearest"`,
| `"bilinear"`.
| seed: Integer. Used to create a random seed.
- | fill_value: a float represents the value to be filled outside
+ | fill_value: a float that represents the value to be filled outside
| the boundaries when `fill_mode="constant"`.
| data_format: string, either `"channels_last"` or `"channels_first"`.
| The ordering of the dimensions in the inputs. `"channels_last"`
diff --git a/R/layers-preprocessing.R b/R/layers-preprocessing.R
index 2961bba72..d266ccf34 100644
--- a/R/layers-preprocessing.R
+++ b/R/layers-preprocessing.R
@@ -1563,7 +1563,7 @@ function (object, height_factor, width_factor, fill_mode = "reflect",
#' Integer. Used to create a random seed.
#'
#' @param fill_value
-#' a float represents the value to be filled outside
+#' a float that represents the value to be filled outside
#' the boundaries when `fill_mode="constant"`.
#'
#' @param data_format
From 758bc89db175c264db44e165ac921d56529719b1 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:12:35 -0400
Subject: [PATCH 16/38] new args: `layer_resizing(pad_to_aspect_ratio,
fill_mode, fill_value)
---
.tether/man/layer_resizing.txt | 14 +++++++++++++-
R/layers-preprocessing.R | 19 ++++++++++++++++++-
2 files changed, 31 insertions(+), 2 deletions(-)
diff --git a/.tether/man/layer_resizing.txt b/.tether/man/layer_resizing.txt
index d60d3ae34..54fa7fdbe 100644
--- a/.tether/man/layer_resizing.txt
+++ b/.tether/man/layer_resizing.txt
@@ -1,7 +1,7 @@
Help on class Resizing in module keras.src.layers.preprocessing.resizing:
class Resizing(keras.src.layers.preprocessing.tf_data_layer.TFDataLayer)
- | Resizing(height, width, interpolation='bilinear', crop_to_aspect_ratio=False, data_format=None, **kwargs)
+ | Resizing(height, width, interpolation='bilinear', crop_to_aspect_ratio=False, pad_to_aspect_ratio=False, fill_mode='constant', fill_value=0.0, data_format=None, **kwargs)
|
| A preprocessing layer which resizes images.
|
@@ -37,6 +37,15 @@ class Resizing(keras.src.layers.preprocessing.tf_data_layer.TFDataLayer)
| largest possible window in the image (of size `(height, width)`)
| that matches the target aspect ratio. By default
| (`crop_to_aspect_ratio=False`), aspect ratio may not be preserved.
+ | pad_to_aspect_ratio: If `True`, pad the images without aspect
+ | ratio distortion. When the original aspect ratio differs
+ | from the target aspect ratio, the output image will be
+ | evenly padded on the short side.
+ | fill_mode: When using `pad_to_aspect_ratio=True`, padded areas
+ | are filled according to the given mode. Only `"constant"` is
+ | supported at this time
+ | (fill with constant value, equal to `fill_value`).
+ | fill_value: Float. Padding value to use when `pad_to_aspect_ratio=True`.
| data_format: string, either `"channels_last"` or `"channels_first"`.
| The ordering of the dimensions in the inputs. `"channels_last"`
| corresponds to inputs with shape `(batch, height, width, channels)`
@@ -66,6 +75,9 @@ class Resizing(keras.src.layers.preprocessing.tf_data_layer.TFDataLayer)
| width,
| interpolation='bilinear',
| crop_to_aspect_ratio=False,
+ | pad_to_aspect_ratio=False,
+ | fill_mode='constant',
+ | fill_value=0.0,
| data_format=None,
| **kwargs
| )
diff --git a/R/layers-preprocessing.R b/R/layers-preprocessing.R
index d266ccf34..bd1641679 100644
--- a/R/layers-preprocessing.R
+++ b/R/layers-preprocessing.R
@@ -1698,6 +1698,21 @@ function (object, scale, offset = 0, ...)
#' that matches the target aspect ratio. By default
#' (`crop_to_aspect_ratio=FALSE`), aspect ratio may not be preserved.
#'
+#' @param pad_to_aspect_ratio
+#' If `TRUE`, pad the images without aspect
+#' ratio distortion. When the original aspect ratio differs
+#' from the target aspect ratio, the output image will be
+#' evenly padded on the short side.
+#'
+#' @param fill_mode
+#' When using `pad_to_aspect_ratio=TRUE`, padded areas
+#' are filled according to the given mode. Only `"constant"` is
+#' supported at this time
+#' (fill with constant value, equal to `fill_value`).
+#'
+#' @param fill_value
+#' Float. Padding value to use when `pad_to_aspect_ratio=TRUE`.
+#'
#' @param data_format
#' string, either `"channels_last"` or `"channels_first"`.
#' The ordering of the dimensions in the inputs. `"channels_last"`
@@ -1725,7 +1740,9 @@ function (object, scale, offset = 0, ...)
#' @tether keras.layers.Resizing
layer_resizing <-
function (object, height, width, interpolation = "bilinear",
- crop_to_aspect_ratio = FALSE, data_format = NULL, ...)
+ crop_to_aspect_ratio = FALSE,
+ pad_to_aspect_ratio = FALSE, fill_mode = "constant", fill_value = 0,
+ data_format = NULL, ...)
{
args <- capture_args(list(height = as_integer, width = as_integer,
input_shape = normalize_shape, batch_size = as_integer,
From d3ba52599f9e68d409794c56d23eb2a6820e2763 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:15:16 -0400
Subject: [PATCH 17/38] new method
`layer_multi_head_attention()$compute_output_spec()`
---
.tether/man/layer_multi_head_attention.txt | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/.tether/man/layer_multi_head_attention.txt b/.tether/man/layer_multi_head_attention.txt
index 5b592bb3e..c9651aeed 100644
--- a/.tether/man/layer_multi_head_attention.txt
+++ b/.tether/man/layer_multi_head_attention.txt
@@ -144,6 +144,20 @@ class MultiHeadAttention(keras.src.layers.layer.Layer)
| key_shape=None
| )
|
+ | compute_output_spec(
+ | self,
+ | query,
+ | value,
+ | key=None,
+ | query_mask=None,
+ | value_mask=None,
+ | key_mask=None,
+ | attention_mask=None,
+ | return_attention_scores=False,
+ | training=None,
+ | use_causal_mask=False
+ | )
+ |
| get_config(self)
| Returns the config of the object.
|
From 35a787b232ebfffcfc19566ada8e7321cf53aebd Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:57:43 -0400
Subject: [PATCH 18/38] new arg: `layer_embedding(weights)`
---
.tether/man/layer_embedding.txt | 6 +++++-
R/layers-core.R | 7 ++++++-
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/.tether/man/layer_embedding.txt b/.tether/man/layer_embedding.txt
index 5eb22cca8..966e9b03b 100644
--- a/.tether/man/layer_embedding.txt
+++ b/.tether/man/layer_embedding.txt
@@ -1,7 +1,7 @@
Help on class Embedding in module keras.src.layers.core.embedding:
class Embedding(keras.src.layers.layer.Layer)
- | Embedding(input_dim, output_dim, embeddings_initializer='uniform', embeddings_regularizer=None, embeddings_constraint=None, mask_zero=False, lora_rank=None, **kwargs)
+ | Embedding(input_dim, output_dim, embeddings_initializer='uniform', embeddings_regularizer=None, embeddings_constraint=None, mask_zero=False, weights=None, lora_rank=None, **kwargs)
|
| Turns positive integers (indexes) into dense vectors of fixed size.
|
@@ -43,6 +43,9 @@ class Embedding(keras.src.layers.layer.Layer)
| If `mask_zero` is set to `True`, as a consequence,
| index 0 cannot be used in the vocabulary (`input_dim` should
| equal size of vocabulary + 1).
+ | weights: Optional floating-point matrix of size
+ | `(input_dim, output_dim)`. The initial embeddings values
+ | to use.
| lora_rank: Optional integer. If set, the layer's forward pass
| will implement LoRA (Low-Rank Adaptation)
| with the provided rank. LoRA sets the layer's embeddings
@@ -79,6 +82,7 @@ class Embedding(keras.src.layers.layer.Layer)
| embeddings_regularizer=None,
| embeddings_constraint=None,
| mask_zero=False,
+ | weights=None,
| lora_rank=None,
| **kwargs
| )
diff --git a/R/layers-core.R b/R/layers-core.R
index b5464a641..5407a3a11 100644
--- a/R/layers-core.R
+++ b/R/layers-core.R
@@ -371,6 +371,11 @@ function (object, equation, output_shape, activation = NULL,
#' index 0 cannot be used in the vocabulary (`input_dim` should
#' equal size of vocabulary + 1).
#'
+#' @param weights
+#' Optional floating-point matrix of size
+#' `(input_dim, output_dim)`. The initial embeddings values
+#' to use.
+#'
#' @param lora_rank
#' Optional integer. If set, the layer's forward pass
#' will implement LoRA (Low-Rank Adaptation)
@@ -399,7 +404,7 @@ function (object, equation, output_shape, activation = NULL,
layer_embedding <-
function (object, input_dim, output_dim, embeddings_initializer = "uniform",
embeddings_regularizer = NULL, embeddings_constraint = NULL,
- mask_zero = FALSE, lora_rank = NULL, ...)
+ mask_zero = FALSE, weights = NULL, lora_rank = NULL, ...)
{
args <- capture_args(list(input_dim = as_integer, output_dim = as_integer,
input_shape = normalize_shape, batch_size = as_integer,
From a9f61252772dd2938e54583e8c4aeef8362eaa51 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 10:58:41 -0400
Subject: [PATCH 19/38] new `keras_model()` internal pickeling method
---
.tether/man/keras_model.txt | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/.tether/man/keras_model.txt b/.tether/man/keras_model.txt
index ec486497b..ac9be46bf 100644
--- a/.tether/man/keras_model.txt
+++ b/.tether/man/keras_model.txt
@@ -127,6 +127,13 @@ class Model(keras.src.backend.tensorflow.trainer.TensorFlowTrainer, keras.src.tr
| )
| Initialize self. See help(type(self)) for accurate signature.
|
+ | __reduce__(self)
+ | __reduce__ is used to customize the behavior of `pickle.pickle()`.
+ |
+ | The method returns a tuple of two elements: a function, and a list of
+ | arguments to pass to that function. In this case we just leverage the
+ | keras saving library.
+ |
| build_from_config(self, config)
| Builds the layer's states with the supplied config dict.
|
From e62d0b973ced7cd959289b692e187c16bd1cbc9d Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:01:59 -0400
Subject: [PATCH 20/38] unwrapped module-level
---
.tether/man/keras.dtype_policies.txt | 10 +++++++++-
.tether/man/keras.layers.txt | 4 ++++
.tether/man/keras.mixed_precision.txt | 12 ++++++++++--
.tether/man/keras.ops.image.txt | 4 ++++
.tether/man/keras.ops.numpy.txt | 19 +++++++++++++++---
.tether/man/keras.ops.txt | 27 +++++++++++++++++++-------
.tether/man/keras.optimizers.txt | 28 ++++++++++++++++++++++++---
.tether/man/keras.quantizers.txt | 13 +++++++++++++
.tether/man/keras.random.txt | 6 +++++-
.tether/man/keras.tree.txt | 2 +-
10 files changed, 107 insertions(+), 18 deletions(-)
diff --git a/.tether/man/keras.dtype_policies.txt b/.tether/man/keras.dtype_policies.txt
index 981362404..1835f6151 100644
--- a/.tether/man/keras.dtype_policies.txt
+++ b/.tether/man/keras.dtype_policies.txt
@@ -1,4 +1,12 @@
-DTypePolicy(name)
+deserialize(config, custom_objects=None)
+DTypePolicy(
+ name,
+ *args,
+ **kwargs
+)
FloatDTypePolicy(name)
+get(identifier)
QuantizedDTypePolicy(name)
+QuantizedFloat8DTypePolicy(name, amax_history_length=1024)
+serialize(dtype_policy)
diff --git a/.tether/man/keras.layers.txt b/.tether/man/keras.layers.txt
index c4de272d2..38bec143e 100644
--- a/.tether/man/keras.layers.txt
+++ b/.tether/man/keras.layers.txt
@@ -537,6 +537,7 @@ Embedding(
embeddings_regularizer=None,
embeddings_constraint=None,
mask_zero=False,
+ weights=None,
lora_rank=None,
**kwargs
)
@@ -1007,6 +1008,9 @@ Resizing(
width,
interpolation='bilinear',
crop_to_aspect_ratio=False,
+ pad_to_aspect_ratio=False,
+ fill_mode='constant',
+ fill_value=0.0,
data_format=None,
**kwargs
)
diff --git a/.tether/man/keras.mixed_precision.txt b/.tether/man/keras.mixed_precision.txt
index 1e4b1570f..619396380 100644
--- a/.tether/man/keras.mixed_precision.txt
+++ b/.tether/man/keras.mixed_precision.txt
@@ -1,5 +1,9 @@
dtype_policy()
-DTypePolicy(name)
+DTypePolicy(
+ name,
+ *args,
+ **kwargs
+)
global_policy()
LossScaleOptimizer(
inner_optimizer,
@@ -7,7 +11,11 @@ LossScaleOptimizer(
dynamic_growth_steps=2000,
**kwargs
)
-Policy(name)
+Policy(
+ name,
+ *args,
+ **kwargs
+)
set_dtype_policy(policy)
set_global_policy(policy)
diff --git a/.tether/man/keras.ops.image.txt b/.tether/man/keras.ops.image.txt
index 50863e0a1..75e683b1d 100644
--- a/.tether/man/keras.ops.image.txt
+++ b/.tether/man/keras.ops.image.txt
@@ -44,6 +44,10 @@ resize(
size,
interpolation='bilinear',
antialias=False,
+ crop_to_aspect_ratio=False,
+ pad_to_aspect_ratio=False,
+ fill_mode='constant',
+ fill_value=0.0,
data_format='channels_last'
)
diff --git a/.tether/man/keras.ops.numpy.txt b/.tether/man/keras.ops.numpy.txt
index f054df5fc..550779517 100644
--- a/.tether/man/keras.ops.numpy.txt
+++ b/.tether/man/keras.ops.numpy.txt
@@ -39,8 +39,16 @@ arcsinh(x)
arctan(x)
arctan2(x1, x2)
arctanh(x)
-argmax(x, axis=None)
-argmin(x, axis=None)
+argmax(
+ x,
+ axis=None,
+ keepdims=False
+)
+argmin(
+ x,
+ axis=None,
+ keepdims=False
+)
argsort(x, axis=-1)
array(x, dtype=None)
average(
@@ -204,7 +212,12 @@ moveaxis(
destination
)
multiply(x1, x2)
-nan_to_num(x)
+nan_to_num(
+ x,
+ nan=0.0,
+ posinf=None,
+ neginf=None
+)
ndim(x)
negative(x)
nonzero(x)
diff --git a/.tether/man/keras.ops.txt b/.tether/man/keras.ops.txt
index 422f0edc0..e648ecab8 100644
--- a/.tether/man/keras.ops.txt
+++ b/.tether/man/keras.ops.txt
@@ -39,8 +39,16 @@ arcsinh(x)
arctan(x)
arctan2(x1, x2)
arctanh(x)
-argmax(x, axis=None)
-argmin(x, axis=None)
+argmax(
+ x,
+ axis=None,
+ keepdims=False
+)
+argmin(
+ x,
+ axis=None,
+ keepdims=False
+)
argsort(x, axis=-1)
array(x, dtype=None)
average(
@@ -233,7 +241,7 @@ hard_swish(x)
hstack(xs)
identity(n, dtype=None)
imag(x)
-image: Module(keras.ops.image)
+image: Module(keras.api.ops.image)
in_top_k(
targets,
predictions,
@@ -258,7 +266,7 @@ istft(
leaky_relu(x, negative_slope=0.2)
less(x1, x2)
less_equal(x1, x2)
-linalg: Module(keras.ops.linalg)
+linalg: Module(keras.api.ops.linalg)
linspace(
start,
stop,
@@ -348,10 +356,15 @@ multi_hot(
**kwargs
)
multiply(x1, x2)
-nan_to_num(x)
+nan_to_num(
+ x,
+ nan=0.0,
+ posinf=None,
+ neginf=None
+)
ndim(x)
negative(x)
-nn: Module(keras.ops.nn)
+nn: Module(keras.api.ops.nn)
nonzero(x)
norm(
x,
@@ -365,7 +378,7 @@ normalize(
order=2
)
not_equal(x1, x2)
-numpy: Module(keras.ops.numpy)
+numpy: Module(keras.api.ops.numpy)
one_hot(
x,
num_classes,
diff --git a/.tether/man/keras.optimizers.txt b/.tether/man/keras.optimizers.txt
index ba93cc12d..66429c020 100644
--- a/.tether/man/keras.optimizers.txt
+++ b/.tether/man/keras.optimizers.txt
@@ -9,6 +9,8 @@ Adadelta(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='adadelta',
**kwargs
)
@@ -26,6 +28,8 @@ Adafactor(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='adafactor',
**kwargs
)
@@ -40,6 +44,8 @@ Adagrad(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='adagrad',
**kwargs
)
@@ -56,6 +62,8 @@ Adam(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='adam',
**kwargs
)
@@ -71,6 +79,8 @@ Adamax(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='adamax',
**kwargs
)
@@ -87,6 +97,8 @@ AdamW(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='adamw',
**kwargs
)
@@ -106,11 +118,13 @@ Ftrl(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='ftrl',
**kwargs
)
get(identifier)
-legacy: Module(keras.optimizers.legacy)
+legacy: Module(keras.api.optimizers.legacy)
Lion(
learning_rate=0.001,
beta_1=0.9,
@@ -122,6 +136,8 @@ Lion(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='lion',
**kwargs
)
@@ -143,6 +159,8 @@ Nadam(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='nadam',
**kwargs
)
@@ -159,11 +177,13 @@ RMSprop(
global_clipnorm=None,
use_ema=False,
ema_momentum=0.99,
- ema_overwrite_frequency=100,
+ ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='rmsprop',
**kwargs
)
-schedules: Module(keras.optimizers.schedules)
+schedules: Module(keras.api.optimizers.schedules)
serialize(optimizer)
SGD(
learning_rate=0.01,
@@ -176,6 +196,8 @@ SGD(
use_ema=False,
ema_momentum=0.99,
ema_overwrite_frequency=None,
+ loss_scale_factor=None,
+ gradient_accumulation_steps=None,
name='SGD',
**kwargs
)
diff --git a/.tether/man/keras.quantizers.txt b/.tether/man/keras.quantizers.txt
index 53fd2902c..603b088a5 100644
--- a/.tether/man/keras.quantizers.txt
+++ b/.tether/man/keras.quantizers.txt
@@ -11,8 +11,21 @@ AbsMaxQuantizer(
epsilon=1e-07,
output_dtype='int8'
)
+compute_float8_amax_history(x, amax_history)
+compute_float8_scale(
+ amax,
+ scale,
+ dtype_max,
+ margin=0
+)
deserialize(config, custom_objects=None)
get(identifier, **kwargs)
+quantize_and_dequantize(
+ inputs,
+ scale,
+ quantized_dtype,
+ compute_dtype
+)
Quantizer(output_dtype='int8')
serialize(initializer)
diff --git a/.tether/man/keras.random.txt b/.tether/man/keras.random.txt
index 011734e3e..0b82263f8 100644
--- a/.tether/man/keras.random.txt
+++ b/.tether/man/keras.random.txt
@@ -44,7 +44,11 @@ randint(
dtype='int32',
seed=None
)
-SeedGenerator(seed=None, **kwargs)
+SeedGenerator(
+ seed=None,
+ name=None,
+ **kwargs
+)
shuffle(
x,
axis=0,
diff --git a/.tether/man/keras.tree.txt b/.tether/man/keras.tree.txt
index 35c8c652c..faa695376 100644
--- a/.tether/man/keras.tree.txt
+++ b/.tether/man/keras.tree.txt
@@ -6,6 +6,7 @@ assert_same_structure(
flatten(structure)
is_nested(structure)
lists_to_tuples(structure)
+map_shape_structure(func, structure)
map_structure(func, *structures)
map_structure_up_to(
shallow_structure,
@@ -22,5 +23,4 @@ traverse(
structure,
top_down=True
)
-unflatten_as(structure, flat_sequence)
From f9a6db508b1703cbb44f8f7fff5b9eaadc86d2bb Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:16:22 -0400
Subject: [PATCH 21/38] fix `split_docstring_into_sections()` for trailing
example newline (keras.utils.clear_session)
---
tools/utils.R | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/utils.R b/tools/utils.R
index ee30400cb..b43e653ae 100644
--- a/tools/utils.R
+++ b/tools/utils.R
@@ -522,6 +522,7 @@ split_docstring_into_sections <- function(docstring) {
is_arg <- m == "arguments"
w_is_arg <- which(is_arg)
new_lines_in_section <- which(is_arg & x == "")
+ new_lines_in_section %<>% .[. < (length(x)-1)]
for (i in new_lines_in_section) {
if (x[i + 1] == "" || ind_lvl[i + 1] == ind_lvl[w_is_arg[1]]) {
w_is_arg2 <- w_is_arg %>% .[. < i]
From b8fe3deefe5e2c4057641ac18dce3833fe99853a Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:19:41 -0400
Subject: [PATCH 22/38] new arg: `clear_session(free_memory)`
---
.tether/man/clear_session.txt | 11 ++++++++++-
.tether/man/keras.utils.txt | 2 +-
R/utils.R | 14 ++++++++++++--
3 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/.tether/man/clear_session.txt b/.tether/man/clear_session.txt
index fe58d8707..a76be2fe9 100644
--- a/.tether/man/clear_session.txt
+++ b/.tether/man/clear_session.txt
@@ -1,5 +1,5 @@
__signature__
-keras.utils.clear_session()
+keras.utils.clear_session(free_memory=True)
__doc__
Resets all state generated by Keras.
@@ -11,6 +11,14 @@ an increasing amount of memory over time, and you may want to clear it.
Calling `clear_session()` releases the global state: this helps avoid
clutter from old models and layers, especially when memory is limited.
+Args:
+ free_memory: Whether to call Python garbage collection.
+ It's usually a good practice to call it to make sure
+ memory used by deleted objects is immediately freed.
+ However, it may take a few seconds to execute, so
+ when using `clear_session()` in a short loop,
+ you may want to skip it.
+
Example 1: calling `clear_session()` when creating models in a loop
```python
@@ -39,3 +47,4 @@ dense_10
>>> new_layer = keras.layers.Dense(10)
>>> print(new_layer.name)
dense
+
diff --git a/.tether/man/keras.utils.txt b/.tether/man/keras.utils.txt
index f6f58a025..b18132715 100644
--- a/.tether/man/keras.utils.txt
+++ b/.tether/man/keras.utils.txt
@@ -20,7 +20,7 @@ audio_dataset_from_directory(
follow_links=False,
verbose=True
)
-clear_session()
+clear_session(free_memory=True)
custom_object_scope(custom_objects)
CustomObjectScope(custom_objects)
deserialize_keras_object(
diff --git a/R/utils.R b/R/utils.R
index a795452a6..fb03081d8 100644
--- a/R/utils.R
+++ b/R/utils.R
@@ -53,6 +53,15 @@
#' new_layer <- layer_dense(units = 10)
#' print(new_layer$name)
#' ```
+#'
+#' @param free_memory
+#' Whether to call Python garbage collection.
+#' It's usually a good practice to call it to make sure
+#' memory used by deleted objects is immediately freed.
+#' However, it may take a few seconds to execute, so
+#' when using `clear_session()` in a short loop,
+#' you may want to skip it.
+#'
#' @returns `NULL`, invisibly, called for side effects.
#' @export
#' @family backend
@@ -62,9 +71,10 @@
# +
#' @tether keras.utils.clear_session
clear_session <-
-function ()
+function (free_memory = TRUE)
{
- keras$utils$clear_session()
+ args <- capture_args()
+ do.call(keras$utils$clear_session, args)
}
From 0b592f76665357c32f5e4fe503a6bcb536d1db10 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:28:12 -0400
Subject: [PATCH 23/38] new `op_ctc_decode()`
---
.tether/man/keras.ops.txt | 9 +++++++
R/ops.R | 55 +++++++++++++++++++++++++++++++++++++++
2 files changed, 64 insertions(+)
diff --git a/.tether/man/keras.ops.txt b/.tether/man/keras.ops.txt
index e648ecab8..48ff79912 100644
--- a/.tether/man/keras.ops.txt
+++ b/.tether/man/keras.ops.txt
@@ -146,6 +146,15 @@ cross(
axisc=-1,
axis=None
)
+ctc_decode(
+ inputs,
+ sequence_lengths,
+ strategy,
+ beam_width=100,
+ top_paths=1,
+ merge_repeated=True,
+ mask_index=None
+)
ctc_loss(
target,
output,
diff --git a/R/ops.R b/R/ops.R
index f2bbd526f..0e1bc713b 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -3931,6 +3931,61 @@ function (x1, x2, axisa = -1L, axisb = -1L, axisc = -1L, axis = NULL)
do.call(keras$ops$cross, args)
}
+#' Decodes the output of a CTC model.
+#'
+#' @returns
+#' A list containing:
+#'
+#' - A list of decoded sequences.
+#' - A list of the negative of the sum of the probability logits
+#' (if strategy is `"greedy"`) or the log probability (if strategy is
+#' `"beam_search"`) for each sequence.
+#'
+#' @param inputs
+#' A tensor of shape `(batch_size, max_length, num_classes)`
+#' containing the logits (output of the model).
+#'
+#' @param sequence_lengths
+#' A tensor of shape `(batch_size)` containing the
+#' sequence lengths for the batch.
+#'
+#' @param strategy
+#' A string for the decoding strategy. Supported values are
+#' `"greedy"` and `"beam_search"`.
+#'
+#' @param beam_width
+#' An integer scalar beam width used in beam search.
+#' Defaults to `100`.
+#'
+#' @param top_paths
+#' An integer scalar, the number of top paths to return.
+#' Defaults to `1`.
+#'
+#' @param merge_repeated
+#' A boolean scalar, whether to merge repeated
+#' labels in the output. Defaults to `TRUE`.
+#'
+#' @param mask_index
+#' An integer scalar, the index of the mask character in
+#' the vocabulary. Defaults to `NULL`.
+#'
+#' @export
+#' @family numpy ops
+#' @family ops
+#' @tether keras.ops.ctc_decode
+#' @seealso
+#' +
+op_ctc_decode <-
+function (inputs, sequence_lengths, strategy, beam_width = 100L,
+ top_paths = 1L, merge_repeated = TRUE, mask_index = NULL)
+{
+ args <- capture_args(list(
+ sequence_lengths = as_integer_array,
+ beam_width = as_integer,
+ top_paths = as_integer,
+ mask_index = as_integer))
+ do.call(keras$ops$ctc_decode, args)
+}
#' Return the cumulative product of elements along a given axis.
#'
From 7e9f68c95ed73ba7b4bd5f345757a02ac4388fee Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:30:06 -0400
Subject: [PATCH 24/38] new `op_eigh()`
---
.tether/man/keras.ops.txt | 1 +
R/ops-linalg.R | 16 ++++++++++++++++
R/ops.R | 2 --
3 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/.tether/man/keras.ops.txt b/.tether/man/keras.ops.txt
index 48ff79912..c11626ecc 100644
--- a/.tether/man/keras.ops.txt
+++ b/.tether/man/keras.ops.txt
@@ -199,6 +199,7 @@ divide(x1, x2)
divide_no_nan(x1, x2)
dot(x1, x2)
eig(x)
+eigh(x)
einsum(subscripts, *operands)
elu(x, alpha=1.0)
empty(shape, dtype=None)
diff --git a/R/ops-linalg.R b/R/ops-linalg.R
index 64924f564..49ac49399 100644
--- a/R/ops-linalg.R
+++ b/R/ops-linalg.R
@@ -57,6 +57,22 @@ op_eig <-
function (x)
keras$ops$eig(x)
+#' Computes the eigenvalues and eigenvectors of a complex Hermitian.
+#'
+#' @returns
+#' A list of two tensors: a tensor of shape `(..., M)` containing
+#' eigenvalues and a tensor of shape `(..., M, M)` containing eigenvectors.
+#'
+#' @param x
+#' Input tensor of shape `(..., M, M)`.
+#'
+#' @export
+#' @family linear algebra ops
+#' @family ops
+#' @tether keras.ops.eigh
+op_eigh <-
+function (x)
+keras$ops$eigh(x)
#' Computes the inverse of a square tensor.
#'
diff --git a/R/ops.R b/R/ops.R
index 0e1bc713b..8ff791de3 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -3973,8 +3973,6 @@ function (x1, x2, axisa = -1L, axisb = -1L, axisc = -1L, axis = NULL)
#' @family numpy ops
#' @family ops
#' @tether keras.ops.ctc_decode
-#' @seealso
-#' +
op_ctc_decode <-
function (inputs, sequence_lengths, strategy, beam_width = 100L,
top_paths = 1L, merge_repeated = TRUE, mask_index = NULL)
From 414b8044bd0718d5c55d67d6c76ddfc04f724730 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:39:11 -0400
Subject: [PATCH 25/38] new `op_select()`
---
.tether/man/keras.ops.txt | 5 +++++
R/ops.R | 46 +++++++++++++++++++++++++++++++++++++++
2 files changed, 51 insertions(+)
diff --git a/.tether/man/keras.ops.txt b/.tether/man/keras.ops.txt
index c11626ecc..d56eba8bb 100644
--- a/.tether/man/keras.ops.txt
+++ b/.tether/man/keras.ops.txt
@@ -461,6 +461,11 @@ segment_sum(
num_segments=None,
sorted=False
)
+select(
+ condlist,
+ choicelist,
+ default=0
+)
selu(x)
separable_conv(
inputs,
diff --git a/R/ops.R b/R/ops.R
index 8ff791de3..2c5560e7b 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -1297,6 +1297,52 @@ function (data, segment_ids, num_segments = NULL, sorted = FALSE)
do.call(keras$ops$segment_sum, args)
}
+#' Return elements from `choicelist`, based on conditions in `condlist`.
+#'
+#' @param condlist
+#' List of boolean tensors.
+#' The list of conditions which determine from which array
+#' in choicelist the output elements are taken.
+#' When multiple conditions are satisfied,
+#' the first one encountered in condlist is used.
+#'
+#' @param choicelist
+#' List of tensors.
+#' The list of tensors from which the output elements are taken.
+#' This list has to be of the same length as `condlist`.
+#'
+#' @param default
+#' Optional scalar value.
+#' The element inserted in the output
+#' when all conditions evaluate to `FALSE`.
+#'
+#' @returns
+#' Tensor where the output at position `m` is the `m`-th element
+#' of the tensor in `choicelist` where the `m`-th element of the
+#' corresponding tensor in `condlist` is `TRUE`.
+#'
+#' @description
+#'
+#' # Examples
+#'
+#' ```{r}
+#' x <- op_arange(6L)
+#' condlist <- list(x < 3, x > 3)
+#' choicelist <- list(x, x^2)
+#' op_select(condlist, choicelist, 42)
+#' ```
+#'
+#' @export
+#' @family numpy ops
+#' @family ops
+#' @tether keras.ops.select
+op_select <-
+function (condlist, choicelist, default = 0L)
+{
+ args <- capture_args(list(default = as_integer))
+ do.call(keras$ops$select, args)
+}
+
#' Solves a linear system of equations given by `a x = b`.
#'
From a226cb96487a83258888c29ae21474ce6f496e3d Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:49:43 -0400
Subject: [PATCH 26/38] new `op_vectorize()`
---
.tether/man/keras.ops.txt | 6 +++++
R/ops.R | 53 +++++++++++++++++++++++++++++++++++++++
2 files changed, 59 insertions(+)
diff --git a/.tether/man/keras.ops.txt b/.tether/man/keras.ops.txt
index d56eba8bb..3142af650 100644
--- a/.tether/man/keras.ops.txt
+++ b/.tether/man/keras.ops.txt
@@ -599,6 +599,12 @@ var(
keepdims=False
)
vdot(x1, x2)
+vectorize(
+ pyfunc,
+ *,
+ excluded=None,
+ signature=None
+)
vectorized_map(function, elements)
vstack(xs)
where(
diff --git a/R/ops.R b/R/ops.R
index 2c5560e7b..a48151ca4 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -7110,6 +7110,59 @@ op_vstack <-
function (xs)
keras$ops$vstack(xs)
+#' Turn a function into a vectorized function.
+#'
+#' @description
+#'
+#' # Examples
+#'
+#' ```{r}
+#' # currently does not work w/ tensorflow backend
+#' if(config_backend() != "tensorflow") {
+#'
+#' myfunc <- function(a, b) a + b
+#'
+#' vfunc <- op_vectorize(myfunc)
+#' y <- vfunc(c(1, 2, 3, 4), 2)
+#' print(y)
+#' # with Jax backend, y is:
+#' # Array([3., 4., 5., 6.], dtype=float32)
+#' }
+#' ```
+#'
+#' @returns
+#' A new function that applies `func` to every element
+#' of its input along axis 1 (the batch axis, the first axis).
+#'
+#' @param func
+#' Callable of a single tensor argument.
+#'
+#' @param excluded
+#' Optional set of integers representing
+#' positional arguments for which the function
+#' will not be vectorized.
+#' These will be passed directly to `func` unmodified.
+#'
+#' @param signature
+#' Optional generalized universal function signature,
+#' e.g., `"(m,n),(n)->(m)"` for vectorized
+#' matrix-vector multiplication. If provided,
+#' `func` will be called with (and expected to return)
+#' arrays with shapes given by the size of corresponding
+#' core dimensions. By default, `func` is assumed
+#' to take scalar tensors as input and output.
+#'
+#' @param ...
+#' For forward/backward compatability.
+#'
+#' @export
+#' @family numpy ops
+#' @family ops
+#' @tether keras.ops.vectorize
+op_vectorize <-
+function (func, ..., excluded = NULL, signature = NULL)
+keras$ops$vectorize(func, ..., excluded = excluded, signature = signature)
+
#' Return elements chosen from `x1` or `x2` depending on `condition`.
#'
From 919151c0a3252d92d2a49842cef9ee1854644206 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:50:27 -0400
Subject: [PATCH 27/38] duplicate entry point exports
---
.tether/man/keras.backend.txt | 2 +-
.tether/man/keras.ops.nn.txt | 9 +++++++++
.tether/man/keras.ops.numpy.txt | 11 +++++++++++
3 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/.tether/man/keras.backend.txt b/.tether/man/keras.backend.txt
index 93263dbda..fa4165277 100644
--- a/.tether/man/keras.backend.txt
+++ b/.tether/man/keras.backend.txt
@@ -1,5 +1,5 @@
backend()
-clear_session()
+clear_session(free_memory=True)
epsilon()
floatx()
get_uid(prefix='')
diff --git a/.tether/man/keras.ops.nn.txt b/.tether/man/keras.ops.nn.txt
index a817e8bf6..8b985f9a6 100644
--- a/.tether/man/keras.ops.nn.txt
+++ b/.tether/man/keras.ops.nn.txt
@@ -42,6 +42,15 @@ conv_transpose(
data_format=None,
dilation_rate=1
)
+ctc_decode(
+ inputs,
+ sequence_lengths,
+ strategy,
+ beam_width=100,
+ top_paths=1,
+ merge_repeated=True,
+ mask_index=None
+)
ctc_loss(
target,
output,
diff --git a/.tether/man/keras.ops.numpy.txt b/.tether/man/keras.ops.numpy.txt
index 550779517..03866409b 100644
--- a/.tether/man/keras.ops.numpy.txt
+++ b/.tether/man/keras.ops.numpy.txt
@@ -260,6 +260,11 @@ roll(
axis=None
)
round(x, decimals=0)
+select(
+ condlist,
+ choicelist,
+ default=0
+)
sign(x)
sin(x)
sinh(x)
@@ -330,6 +335,12 @@ var(
keepdims=False
)
vdot(x1, x2)
+vectorize(
+ pyfunc,
+ *,
+ excluded=None,
+ signature=None
+)
vstack(xs)
where(
condition,
From e70a3345685389177d4772d958aaf7967e46cc97 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:54:54 -0400
Subject: [PATCH 28/38] new `op_image_rgb_to_grayscale()`
---
.tether/man/keras.ops.image.txt | 1 +
R/ops-image.R | 49 +++++++++++++++++++++++++++++++++
2 files changed, 50 insertions(+)
diff --git a/.tether/man/keras.ops.image.txt b/.tether/man/keras.ops.image.txt
index 75e683b1d..c729e3539 100644
--- a/.tether/man/keras.ops.image.txt
+++ b/.tether/man/keras.ops.image.txt
@@ -50,4 +50,5 @@ resize(
fill_value=0.0,
data_format='channels_last'
)
+rgb_to_grayscale(image, data_format='channels_last')
diff --git a/R/ops-image.R b/R/ops-image.R
index eb9cdb310..7891e7361 100644
--- a/R/ops-image.R
+++ b/R/ops-image.R
@@ -455,3 +455,52 @@ function (images, top_cropping = NULL, left_cropping = NULL,
do.call(keras$ops$image$crop_images, args)
}
+#' Convert RGB images to grayscale.
+#'
+#' @description
+#' This function converts RGB images to grayscale images. It supports both
+#' 3D and 4D tensors, where the last dimension represents channels.
+#'
+#' # Examples
+#' ```{r}
+#' x <- random_uniform(c(2, 4, 4, 3))
+#' y <- op_image_rgb_to_grayscale(x)
+#' shape(y)
+#' ```
+#'
+#' ```{r}
+#' x <- random_uniform(c(4, 4, 3)) # Single RGB image
+#' y = op_image_rgb_to_grayscale(x)
+#' shape(y)
+#' ```
+#'
+#' ```{r}
+#' x <- random_uniform(c(2, 3, 4, 4))
+#' y <- op_image_rgb_to_grayscale(x, data_format="channels_first")
+#' shape(y)
+#' ```
+#'
+#' @returns
+#' Grayscale image or batch of grayscale images.
+#'
+#' @param image
+#' Input RGB image or batch of RGB images. Must be a 3D tensor
+#' with shape `(height, width, channels)` or a 4D tensor with shape
+#' `(batch, height, width, channels)`.
+#'
+#' @param data_format
+#' A string specifying the data format of the input tensor.
+#' It can be either `"channels_last"` or `"channels_first"`.
+#' `"channels_last"` corresponds to inputs with shape
+#' `(batch, height, width, channels)`, while `"channels_first"`
+#' corresponds to inputs with shape `(batch, channels, height, width)`.
+#' Defaults to `"channels_last"`.
+#'
+#' @export
+#' @family image ops
+#' @family image utils
+#' @family ops
+#' @tether keras.ops.image.rgb_to_grayscale
+op_image_rgb_to_grayscale <-
+function (image, data_format = "channels_last")
+keras$ops$image$rgb_to_grayscale(image, data_format)
From 744ac92b14865b9ce68b7f2c47ab802bca0df7c2 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 11:58:49 -0400
Subject: [PATCH 29/38] new `loss_tversky()`
---
.tether/man/keras.losses.txt | 12 ++++++++
R/losses.R | 54 ++++++++++++++++++++++++++++++++++++
2 files changed, 66 insertions(+)
diff --git a/.tether/man/keras.losses.txt b/.tether/man/keras.losses.txt
index 9e3602b5e..7727a1eb7 100644
--- a/.tether/man/keras.losses.txt
+++ b/.tether/man/keras.losses.txt
@@ -129,4 +129,16 @@ SparseCategoricalCrossentropy(
)
squared_hinge(y_true, y_pred)
SquaredHinge(reduction='sum_over_batch_size', name='squared_hinge')
+tversky(
+ y_true,
+ y_pred,
+ alpha=0.5,
+ beta=0.5
+)
+Tversky(
+ alpha=0.5,
+ beta=0.5,
+ reduction='sum_over_batch_size',
+ name='tversky'
+)
diff --git a/R/losses.R b/R/losses.R
index 5ea29205d..8bc3acb07 100644
--- a/R/losses.R
+++ b/R/losses.R
@@ -1588,6 +1588,7 @@ function (y_true, y_pred, ..., reduction = "sum_over_batch_size",
#'
#' @export
#' @inheritParams loss_hinge
+#' @family losses
#' @tether keras.losses.CTC
# @seealso
# +
@@ -1602,6 +1603,59 @@ function (y_true, y_pred, ..., reduction = "sum_over_batch_size",
do.call(callable, args)
}
+#' Computes the Tversky loss value between `y_true` and `y_pred`.
+#'
+#' @description
+#' This loss function is weighted by the alpha and beta coefficients
+#' that penalize false positives and false negatives.
+#'
+#' With `alpha=0.5` and `beta=0.5`, the loss value becomes equivalent to
+#' Dice Loss.
+#'
+#' This loss function is weighted by the alpha and beta coefficients
+#' that penalize false positives and false negatives.
+#'
+#' With `alpha=0.5` and `beta=0.5`, the loss value becomes equivalent to
+#' Dice Loss.
+#'
+#' # Reference
+#' - [Salehi et al., 2017](https://arxiv.org/abs/1706.05721)
+#'
+#' @returns
+#' Tversky loss value.
+#'
+#' @param y_true
+#' tensor of true targets.
+#'
+#' @param y_pred
+#' tensor of predicted targets.
+#'
+#' @param alpha
+#' coefficient controlling incidence of false positives.
+#'
+#' @param beta
+#' coefficient controlling incidence of false negatives.
+#'
+#' @param name
+#' String, name for the object
+#'
+#' @param ...
+#' For forward/backward compatability.
+#'
+#' @export
+#' @inheritParams loss_hinge
+#' @family losses
+#' @tether keras.losses.Tversky
+loss_tversky <-
+function (y_true, y_pred, ..., alpha = 0.5, beta = 0.5,
+ reduction = "sum_over_batch_size", name = "tversky")
+{
+ args <- capture_args(list(y_true = as_py_array, y_pred = as_py_array))
+ callable <- if (missing(y_true) && missing(y_pred))
+ keras$losses$Tversky else keras$losses$tversky
+ do.call(callable, args)
+}
+
From de8a688ceb6fbf2afa604f43b6f3ecfb27724985 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 12:00:13 -0400
Subject: [PATCH 30/38] checkin tethers for new symbols
---
.tether/man/loss_tversky.txt | 46 +++++++++++++++++++++++
.tether/man/op_ctc_decode.txt | 37 ++++++++++++++++++
.tether/man/op_eigh.txt | 12 ++++++
.tether/man/op_image_rgb_to_grayscale.txt | 41 ++++++++++++++++++++
.tether/man/op_select.txt | 39 +++++++++++++++++++
.tether/man/op_vectorize.txt | 38 +++++++++++++++++++
6 files changed, 213 insertions(+)
create mode 100644 .tether/man/loss_tversky.txt
create mode 100644 .tether/man/op_ctc_decode.txt
create mode 100644 .tether/man/op_eigh.txt
create mode 100644 .tether/man/op_image_rgb_to_grayscale.txt
create mode 100644 .tether/man/op_select.txt
create mode 100644 .tether/man/op_vectorize.txt
diff --git a/.tether/man/loss_tversky.txt b/.tether/man/loss_tversky.txt
new file mode 100644
index 000000000..8687ef6a2
--- /dev/null
+++ b/.tether/man/loss_tversky.txt
@@ -0,0 +1,46 @@
+Help on class Tversky in module keras.src.losses.losses:
+
+class Tversky(LossFunctionWrapper)
+ | Tversky(alpha=0.5, beta=0.5, reduction='sum_over_batch_size', name='tversky')
+ |
+ | Computes the Tversky loss value between `y_true` and `y_pred`.
+ |
+ | This loss function is weighted by the alpha and beta coefficients
+ | that penalize false positives and false negatives.
+ |
+ | With `alpha=0.5` and `beta=0.5`, the loss value becomes equivalent to
+ | Dice Loss.
+ |
+ | Args:
+ | y_true: tensor of true targets.
+ | y_pred: tensor of predicted targets.
+ | alpha: coefficient controlling incidence of false positives.
+ | beta: coefficient controlling incidence of false negatives.
+ |
+ | Returns:
+ | Tversky loss value.
+ |
+ | Reference:
+ |
+ | - [Salehi et al., 2017](https://arxiv.org/abs/1706.05721)
+ |
+ | Method resolution order:
+ | Tversky
+ | LossFunctionWrapper
+ | keras.src.losses.loss.Loss
+ | builtins.object
+ |
+ | Methods defined here:
+ |
+ | __init__(
+ | self,
+ | alpha=0.5,
+ | beta=0.5,
+ | reduction='sum_over_batch_size',
+ | name='tversky'
+ | )
+ | Initialize self. See help(type(self)) for accurate signature.
+ |
+ | get_config(self)
+ |
+
diff --git a/.tether/man/op_ctc_decode.txt b/.tether/man/op_ctc_decode.txt
new file mode 100644
index 000000000..53d6959e7
--- /dev/null
+++ b/.tether/man/op_ctc_decode.txt
@@ -0,0 +1,37 @@
+__signature__
+keras.ops.ctc_decode(
+ inputs,
+ sequence_lengths,
+ strategy,
+ beam_width=100,
+ top_paths=1,
+ merge_repeated=True,
+ mask_index=None
+)
+__doc__
+Decodes the output of a CTC model.
+
+Args:
+ inputs: A tensor of shape `(batch_size, max_length, num_classes)`
+ containing the logits (output of the model).
+ sequence_lengths: A tensor of shape `(batch_size,)` containing the
+ sequence lengths for the batch.
+ strategy: A string for the decoding strategy. Supported values are
+ `"greedy"` and `"beam_search"`.
+ beam_width: An integer scalar beam width used in beam search.
+ Defaults to 100.
+ top_paths: An integer scalar, the number of top paths to return.
+ Defaults to 1.
+ merge_repeated: A boolean scalar, whether to merge repeated
+ labels in the output. Defaults to `True`.
+ mask_index: An integer scalar, the index of the mask character in
+ the vocabulary. Defaults to `None`.
+
+Returns:
+ A tuple containing:
+
+ - A list of decoded sequences.
+ - A list of the negative of the sum of the probability logits
+ (if strategy is `"greedy"`) or the log probability (if strategy is
+ `"beam_search"`) for each sequence.
+
diff --git a/.tether/man/op_eigh.txt b/.tether/man/op_eigh.txt
new file mode 100644
index 000000000..1b9729d99
--- /dev/null
+++ b/.tether/man/op_eigh.txt
@@ -0,0 +1,12 @@
+__signature__
+keras.ops.eigh(x)
+__doc__
+Computes the eigenvalues and eigenvectors of a complex Hermitian.
+
+Args:
+ x: Input tensor of shape `(..., M, M)`.
+
+Returns:
+ A tuple of two tensors: a tensor of shape `(..., M)` containing
+ eigenvalues and a tensor of shape `(..., M, M)` containing eigenvectors.
+
diff --git a/.tether/man/op_image_rgb_to_grayscale.txt b/.tether/man/op_image_rgb_to_grayscale.txt
new file mode 100644
index 000000000..8432f5e25
--- /dev/null
+++ b/.tether/man/op_image_rgb_to_grayscale.txt
@@ -0,0 +1,41 @@
+__signature__
+keras.ops.image.rgb_to_grayscale(image, data_format='channels_last')
+__doc__
+Convert RGB images to grayscale.
+
+This function converts RGB images to grayscale images. It supports both
+3D and 4D tensors, where the last dimension represents channels.
+
+Args:
+ image: Input RGB image or batch of RGB images. Must be a 3D tensor
+ with shape `(height, width, channels)` or a 4D tensor with shape
+ `(batch, height, width, channels)`.
+ data_format: A string specifying the data format of the input tensor.
+ It can be either `"channels_last"` or `"channels_first"`.
+ `"channels_last"` corresponds to inputs with shape
+ `(batch, height, width, channels)`, while `"channels_first"`
+ corresponds to inputs with shape `(batch, channels, height, width)`.
+ Defaults to `"channels_last"`.
+
+Returns:
+ Grayscale image or batch of grayscale images.
+
+Examples:
+
+>>> import numpy as np
+>>> from keras.src import ops
+>>> x = np.random.random((2, 4, 4, 3))
+>>> y = ops.image.rgb_to_grayscale(x)
+>>> y.shape
+(2, 4, 4, 1)
+
+>>> x = np.random.random((4, 4, 3)) # Single RGB image
+>>> y = ops.image.rgb_to_grayscale(x)
+>>> y.shape
+(4, 4, 1)
+
+>>> x = np.random.random((2, 3, 4, 4))
+>>> y = ops.image.rgb_to_grayscale(x, data_format="channels_first")
+>>> y.shape
+(2, 1, 4, 4)
+
diff --git a/.tether/man/op_select.txt b/.tether/man/op_select.txt
new file mode 100644
index 000000000..2acfb6e6f
--- /dev/null
+++ b/.tether/man/op_select.txt
@@ -0,0 +1,39 @@
+__signature__
+keras.ops.select(
+ condlist,
+ choicelist,
+ default=0
+)
+__doc__
+Return elements from `choicelist`, based on conditions in `condlist`.
+
+Args:
+ condlist: List of boolean tensors.
+ The list of conditions which determine from which array
+ in choicelist the output elements are taken.
+ When multiple conditions are satisfied,
+ the first one encountered in condlist is used.
+ choicelist: List of tensors.
+ The list of tensors from which the output elements are taken.
+ This list has to be of the same length as `condlist`.
+ defaults: Optional scalar value.
+ The element inserted in the output
+ when all conditions evaluate to `False`.
+
+Returns:
+ Tensor where the output at position `m` is the `m`-th element
+ of the tensor in `choicelist` where the `m`-th element of the
+ corresponding tensor in `condlist` is `True`.
+
+Example:
+
+```python
+from keras import ops
+
+x = ops.arange(6)
+condlist = [x<3, x>3]
+choicelist = [x, x**2]
+ops.select(condlist, choicelist, 42)
+# Returns: tensor([0, 1, 2, 42, 16, 25])
+```
+
diff --git a/.tether/man/op_vectorize.txt b/.tether/man/op_vectorize.txt
new file mode 100644
index 000000000..e92d8e4ea
--- /dev/null
+++ b/.tether/man/op_vectorize.txt
@@ -0,0 +1,38 @@
+__signature__
+keras.ops.vectorize(
+ pyfunc,
+ *,
+ excluded=None,
+ signature=None
+)
+__doc__
+Turn a function into a vectorized function.
+
+Example:
+
+```python
+def myfunc(a, b):
+ return a + b
+
+vfunc = np.vectorize(myfunc)
+y = vfunc([1, 2, 3, 4], 2) # Returns Tensor([3, 4, 5, 6])
+```
+
+Args:
+ pyfunc: Callable of a single tensor argument.
+ excluded: Optional set of integers representing
+ positional arguments for which the function
+ will not be vectorized.
+ These will be passed directly to `pyfunc` unmodified.
+ signature: Optional generalized universal function signature,
+ e.g., `"(m,n),(n)->(m)"` for vectorized
+ matrix-vector multiplication. If provided,
+ `pyfunc` will be called with (and expected to return)
+ arrays with shapes given by the size of corresponding
+ core dimensions. By default, `pyfunc` is assumed
+ to take scalars tensors as input and output.
+
+Returns:
+ A new function that applies `pyfunc` to every element
+ of its input along axis 0 (the batch axis).
+
From 70042b118de8ce5f02fc15ccd8b8e1acb7a9dbac Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 13:38:44 -0400
Subject: [PATCH 31/38] fixes for broken examples
---
R/callbacks.R | 4 ++++
R/ops.R | 13 ++++++++++++-
2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/R/callbacks.R b/R/callbacks.R
index 0fc7d680d..e593f296f 100644
--- a/R/callbacks.R
+++ b/R/callbacks.R
@@ -41,6 +41,10 @@
#' layer_dense(10)
#' model %>% compile(optimizer = optimizer_sgd(), loss = 'mse')
#'
+#' # ensure model is built (i.e., weights are initialized) for
+#' # callback_backup_and_restore()
+#' model(op_ones(c(5, 20))) |> invisible()
+#'
#' tryCatch({
#' model %>% fit(x = op_ones(c(5, 20)),
#' y = op_zeros(5),
diff --git a/R/ops.R b/R/ops.R
index a48151ca4..cffdac8a1 100644
--- a/R/ops.R
+++ b/R/ops.R
@@ -3533,7 +3533,8 @@ function (x, dtype = NULL)
#' axis = 2,
#' weights = op_array(c(1/4, 3/4))
#' )
-#' # Error: Axis must be specified when shapes of a and weights differ.
+#'
+#' # Error: Axis must be specified when shapes of x and weights differ.
#' try(op_average(
#' data,
#' weights = op_array(c(1/4, 3/4))
@@ -3573,6 +3574,13 @@ op_average <-
function (x, axis = NULL, weights = NULL)
{
args <- capture_args(list(axis = as_axis))
+ # BUG guardrail. In Keras 3.3.2, this started silently (wrongly) succeeding
+ # where it would return the sum of the axis reductions rather than throwing
+ # an exception
+ # We require here that users pass `axis` if passing weights with a different shape.
+ if(!is.null(weights) && is.null(axis) &&
+ !identical(op_shape(weights), op_shape(x)))
+ stop("Axis must be specified when shapes of x and weights differ.")
do.call(keras$ops$average, args)
}
@@ -5760,6 +5768,9 @@ keras$ops$multiply(x1, x2)
#' @param neginf
#' Optional float or int. Value to replace negative infinity with.
#'
+#' @details
+#'
+#' # Example
#' ```{r}
#' (x <- op_convert_to_tensor(c(1, NaN, -Inf, Inf)))
#' op_nan_to_num(x)
From 13f4c502e70a5b6e7ac39bcff3f60e52843ad916 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 13:38:51 -0400
Subject: [PATCH 32/38] redocument
---
NAMESPACE | 6 +
man/Layer.Rd | 3 +
man/Loss.Rd | 2 +
man/callback_backup_and_restore.Rd | 4 +
man/clear_session.Rd | 10 +-
man/image_array_save.Rd | 1 +
man/image_from_array.Rd | 1 +
man/image_load.Rd | 1 +
man/image_smart_resize.Rd | 1 +
man/image_to_array.Rd | 1 +
man/layer_embedding.Rd | 5 +
man/layer_random_zoom.Rd | 2 +-
man/layer_resizing.Rd | 15 +
man/layer_tfsm.Rd | 4 +-
man/loss_binary_crossentropy.Rd | 2 +
man/loss_binary_focal_crossentropy.Rd | 2 +
man/loss_categorical_crossentropy.Rd | 2 +
man/loss_categorical_focal_crossentropy.Rd | 2 +
man/loss_categorical_hinge.Rd | 2 +
man/loss_cosine_similarity.Rd | 2 +
man/loss_ctc.Rd | 40 ++
man/loss_dice.Rd | 2 +
man/loss_hinge.Rd | 2 +
man/loss_huber.Rd | 2 +
man/loss_kl_divergence.Rd | 6 +
man/loss_log_cosh.Rd | 2 +
man/loss_mean_absolute_error.Rd | 2 +
man/loss_mean_absolute_percentage_error.Rd | 2 +
man/loss_mean_squared_error.Rd | 2 +
man/loss_mean_squared_logarithmic_error.Rd | 2 +
man/loss_poisson.Rd | 2 +
man/loss_sparse_categorical_crossentropy.Rd | 2 +
man/loss_squared_hinge.Rd | 2 +
man/loss_tversky.Rd | 95 ++++
man/metric_binary_crossentropy.Rd | 2 +
man/metric_binary_focal_crossentropy.Rd | 2 +
man/metric_categorical_crossentropy.Rd | 2 +
man/metric_categorical_focal_crossentropy.Rd | 2 +
man/metric_categorical_hinge.Rd | 2 +
man/metric_hinge.Rd | 2 +
man/metric_huber.Rd | 2 +
man/metric_kl_divergence.Rd | 6 +
man/metric_log_cosh.Rd | 2 +
man/metric_mean_absolute_error.Rd | 2 +
man/metric_mean_absolute_percentage_error.Rd | 2 +
man/metric_mean_squared_error.Rd | 2 +
man/metric_mean_squared_logarithmic_error.Rd | 2 +
man/metric_poisson.Rd | 2 +
man/metric_sparse_categorical_crossentropy.Rd | 2 +
man/metric_squared_hinge.Rd | 2 +
man/op_abs.Rd | 8 +
man/op_add.Rd | 8 +
man/op_all.Rd | 10 +-
man/op_any.Rd | 8 +
man/op_append.Rd | 8 +
man/op_arange.Rd | 8 +
man/op_arccos.Rd | 8 +
man/op_arccosh.Rd | 8 +
man/op_arcsin.Rd | 8 +
man/op_arcsinh.Rd | 8 +
man/op_arctan.Rd | 8 +
man/op_arctan2.Rd | 8 +
man/op_arctanh.Rd | 8 +
man/op_argmax.Rd | 13 +-
man/op_argmin.Rd | 13 +-
man/op_argsort.Rd | 8 +
man/op_array.Rd | 8 +
man/op_average.Rd | 15 +-
man/op_average_pool.Rd | 5 +
man/op_batch_normalization.Rd | 5 +
man/op_binary_crossentropy.Rd | 5 +
man/op_bincount.Rd | 8 +
man/op_broadcast_to.Rd | 8 +
man/op_cast.Rd | 5 +
man/op_categorical_crossentropy.Rd | 5 +
man/op_ceil.Rd | 8 +
man/op_cholesky.Rd | 6 +
man/op_clip.Rd | 8 +
man/op_concatenate.Rd | 8 +
man/op_cond.Rd | 5 +
man/op_conj.Rd | 8 +
man/op_conv.Rd | 5 +
man/op_conv_transpose.Rd | 5 +
man/op_convert_to_numpy.Rd | 5 +
man/op_convert_to_tensor.Rd | 5 +
man/op_copy.Rd | 8 +
man/op_correlate.Rd | 8 +
man/op_cos.Rd | 8 +
man/op_cosh.Rd | 8 +
man/op_count_nonzero.Rd | 8 +
man/op_cross.Rd | 8 +
man/op_ctc_decode.Rd | 410 ++++++++++++++++++
man/op_ctc_loss.Rd | 5 +
man/op_cumprod.Rd | 8 +
man/op_cumsum.Rd | 8 +
man/op_custom_gradient.Rd | 5 +
man/op_depthwise_conv.Rd | 5 +
man/op_det.Rd | 6 +
man/op_diag.Rd | 8 +
man/op_diagonal.Rd | 8 +
man/op_diff.Rd | 8 +
man/op_digitize.Rd | 8 +
man/op_divide.Rd | 8 +
man/op_divide_no_nan.Rd | 8 +
man/op_dot.Rd | 8 +
man/op_eig.Rd | 6 +
man/op_eigh.Rd | 249 +++++++++++
man/op_einsum.Rd | 8 +
man/op_elu.Rd | 5 +
man/op_empty.Rd | 8 +
man/op_equal.Rd | 8 +
man/op_erf.Rd | 5 +
man/op_erfinv.Rd | 5 +
man/op_exp.Rd | 8 +
man/op_expand_dims.Rd | 8 +
man/op_expm1.Rd | 8 +
man/op_extract_sequences.Rd | 5 +
man/op_eye.Rd | 8 +
man/op_fft.Rd | 5 +
man/op_fft2.Rd | 5 +
man/op_flip.Rd | 8 +
man/op_floor.Rd | 8 +
man/op_floor_divide.Rd | 8 +
man/op_fori_loop.Rd | 5 +
man/op_full.Rd | 8 +
man/op_full_like.Rd | 8 +
man/op_gelu.Rd | 5 +
man/op_get_item.Rd | 8 +
man/op_greater.Rd | 8 +
man/op_greater_equal.Rd | 8 +
man/op_hard_sigmoid.Rd | 5 +
man/op_hard_silu.Rd | 5 +
man/op_hstack.Rd | 8 +
man/op_identity.Rd | 8 +
man/op_imag.Rd | 8 +
man/op_image_affine_transform.Rd | 7 +
man/op_image_crop.Rd | 7 +
man/op_image_extract_patches.Rd | 7 +
man/op_image_map_coordinates.Rd | 7 +
man/op_image_pad.Rd | 7 +
man/op_image_resize.Rd | 31 ++
man/op_image_rgb_to_grayscale.Rd | 299 +++++++++++++
man/op_in_top_k.Rd | 5 +
man/op_inv.Rd | 6 +
man/op_irfft.Rd | 5 +
man/op_is_tensor.Rd | 5 +
man/op_isclose.Rd | 8 +
man/op_isfinite.Rd | 8 +
man/op_isinf.Rd | 8 +
man/op_isnan.Rd | 8 +
man/op_istft.Rd | 5 +
man/op_leaky_relu.Rd | 5 +
man/op_less.Rd | 8 +
man/op_less_equal.Rd | 8 +
man/op_linspace.Rd | 10 +-
man/op_log.Rd | 8 +
man/op_log10.Rd | 8 +
man/op_log1p.Rd | 8 +
man/op_log2.Rd | 8 +
man/op_log_sigmoid.Rd | 5 +
man/op_log_softmax.Rd | 5 +
man/op_logaddexp.Rd | 8 +
man/op_logical_and.Rd | 8 +
man/op_logical_not.Rd | 8 +
man/op_logical_or.Rd | 8 +
man/op_logical_xor.Rd | 8 +
man/op_logspace.Rd | 10 +-
man/op_logsumexp.Rd | 5 +
man/op_lu_factor.Rd | 6 +
man/op_matmul.Rd | 8 +
man/op_max.Rd | 12 +-
man/op_max_pool.Rd | 5 +
man/op_maximum.Rd | 8 +
man/op_mean.Rd | 8 +
man/op_median.Rd | 8 +
man/op_meshgrid.Rd | 8 +
man/op_min.Rd | 12 +-
man/op_minimum.Rd | 8 +
man/op_mod.Rd | 8 +
man/op_moments.Rd | 5 +
man/op_moveaxis.Rd | 8 +
man/op_multi_hot.Rd | 5 +
man/op_multiply.Rd | 8 +
man/op_nan_to_num.Rd | 39 +-
man/op_ndim.Rd | 8 +
man/op_negative.Rd | 8 +
man/op_nonzero.Rd | 8 +
man/op_norm.Rd | 6 +
man/op_normalize.Rd | 5 +
man/op_not_equal.Rd | 8 +
man/op_one_hot.Rd | 5 +
man/op_ones.Rd | 8 +
man/op_ones_like.Rd | 8 +
man/op_outer.Rd | 8 +
man/op_pad.Rd | 8 +
man/op_power.Rd | 8 +
man/op_prod.Rd | 8 +
man/op_qr.Rd | 5 +
man/op_quantile.Rd | 8 +
man/op_ravel.Rd | 8 +
man/op_real.Rd | 8 +
man/op_reciprocal.Rd | 8 +
man/op_relu.Rd | 5 +
man/op_relu6.Rd | 5 +
man/op_repeat.Rd | 8 +
man/op_reshape.Rd | 8 +
man/op_rfft.Rd | 5 +
man/op_roll.Rd | 8 +
man/op_round.Rd | 8 +
man/op_rsqrt.Rd | 5 +
man/op_scatter.Rd | 5 +
man/op_scatter_update.Rd | 5 +
man/op_segment_max.Rd | 5 +
man/op_segment_sum.Rd | 5 +
man/op_select.Rd | 403 +++++++++++++++++
man/op_selu.Rd | 5 +
man/op_separable_conv.Rd | 5 +
man/op_shape.Rd | 5 +
man/op_sigmoid.Rd | 5 +
man/op_sign.Rd | 8 +
man/op_silu.Rd | 5 +
man/op_sin.Rd | 8 +
man/op_sinh.Rd | 8 +
man/op_size.Rd | 8 +
man/op_slice.Rd | 5 +
man/op_slice_update.Rd | 5 +
man/op_softmax.Rd | 5 +
man/op_softplus.Rd | 5 +
man/op_softsign.Rd | 5 +
man/op_solve.Rd | 5 +
man/op_solve_triangular.Rd | 6 +
man/op_sort.Rd | 8 +
man/op_sparse_categorical_crossentropy.Rd | 5 +
man/op_split.Rd | 8 +
man/op_sqrt.Rd | 8 +
man/op_square.Rd | 8 +
man/op_squeeze.Rd | 8 +
man/op_stack.Rd | 8 +
man/op_std.Rd | 8 +
man/op_stft.Rd | 5 +
man/op_stop_gradient.Rd | 5 +
man/op_subtract.Rd | 8 +
man/op_sum.Rd | 8 +
man/op_svd.Rd | 6 +
man/op_swapaxes.Rd | 8 +
man/op_take.Rd | 8 +
man/op_take_along_axis.Rd | 8 +
man/op_tan.Rd | 8 +
man/op_tanh.Rd | 8 +
man/op_tensordot.Rd | 8 +
man/op_tile.Rd | 8 +
man/op_top_k.Rd | 5 +
man/op_trace.Rd | 8 +
man/op_transpose.Rd | 8 +
man/op_tri.Rd | 8 +
man/op_tril.Rd | 8 +
man/op_triu.Rd | 8 +
man/op_unstack.Rd | 5 +
man/op_var.Rd | 8 +
man/op_vdot.Rd | 8 +
man/op_vectorize.Rd | 408 +++++++++++++++++
man/op_vectorized_map.Rd | 5 +
man/op_vstack.Rd | 8 +
man/op_where.Rd | 8 +
man/op_while_loop.Rd | 5 +
man/op_zeros.Rd | 8 +
man/op_zeros_like.Rd | 8 +
man/optimizer_rmsprop.Rd | 2 +-
man/random_seed_generator.Rd | 4 +-
269 files changed, 3593 insertions(+), 20 deletions(-)
create mode 100644 man/loss_tversky.Rd
create mode 100644 man/op_ctc_decode.Rd
create mode 100644 man/op_eigh.Rd
create mode 100644 man/op_image_rgb_to_grayscale.Rd
create mode 100644 man/op_select.Rd
create mode 100644 man/op_vectorize.Rd
diff --git a/NAMESPACE b/NAMESPACE
index c3e82a55f..f018c2246 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -357,6 +357,7 @@ export(loss_mean_squared_logarithmic_error)
export(loss_poisson)
export(loss_sparse_categorical_crossentropy)
export(loss_squared_hinge)
+export(loss_tversky)
export(mark_active)
export(metric_auc)
export(metric_binary_accuracy)
@@ -453,6 +454,7 @@ export(op_cos)
export(op_cosh)
export(op_count_nonzero)
export(op_cross)
+export(op_ctc_decode)
export(op_ctc_loss)
export(op_cumprod)
export(op_cumsum)
@@ -467,6 +469,7 @@ export(op_divide)
export(op_divide_no_nan)
export(op_dot)
export(op_eig)
+export(op_eigh)
export(op_einsum)
export(op_elu)
export(op_empty)
@@ -502,6 +505,7 @@ export(op_image_extract_patches)
export(op_image_map_coordinates)
export(op_image_pad)
export(op_image_resize)
+export(op_image_rgb_to_grayscale)
export(op_in_top_k)
export(op_inv)
export(op_irfft)
@@ -576,6 +580,7 @@ export(op_scatter)
export(op_scatter_update)
export(op_segment_max)
export(op_segment_sum)
+export(op_select)
export(op_selu)
export(op_separable_conv)
export(op_shape)
@@ -621,6 +626,7 @@ export(op_triu)
export(op_unstack)
export(op_var)
export(op_vdot)
+export(op_vectorize)
export(op_vectorized_map)
export(op_vstack)
export(op_where)
diff --git a/man/Layer.Rd b/man/Layer.Rd
index 2290fb2e9..1bc3c55e7 100644
--- a/man/Layer.Rd
+++ b/man/Layer.Rd
@@ -594,6 +594,8 @@ Alias of \code{layer$variable_dtype}.
The dtype layer inputs should be converted to.
\item \code{losses}
List of scalar losses from \code{add_loss()}, regularizers and sublayers.
+\item \code{metrics}
+List of all metrics.
\item \code{metrics_variables}
List of all metric variables.
\item \code{non_trainable_variables}
@@ -650,6 +652,7 @@ Output tensor or list of output tensors.
\section{Data descriptors (Attributes):}{
\itemize{
+\item \code{dtype_policy}
\item \code{input_spec}
\item \code{supports_masking}
Whether this layer supports computing a mask using \code{compute_mask}.
diff --git a/man/Loss.Rd b/man/Loss.Rd
index d57c78f19..da21f07e8 100644
--- a/man/Loss.Rd
+++ b/man/Loss.Rd
@@ -142,6 +142,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -154,6 +155,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/callback_backup_and_restore.Rd b/man/callback_backup_and_restore.Rd
index ecefcf51d..df537988b 100644
--- a/man/callback_backup_and_restore.Rd
+++ b/man/callback_backup_and_restore.Rd
@@ -69,6 +69,10 @@ model <- keras_model_sequential() \%>\%
layer_dense(10)
model \%>\% compile(optimizer = optimizer_sgd(), loss = 'mse')
+# ensure model is built (i.e., weights are initialized) for
+# callback_backup_and_restore()
+model(op_ones(c(5, 20))) |> invisible()
+
tryCatch(\{
model \%>\% fit(x = op_ones(c(5, 20)),
y = op_zeros(5),
diff --git a/man/clear_session.Rd b/man/clear_session.Rd
index 06be430f3..03507966f 100644
--- a/man/clear_session.Rd
+++ b/man/clear_session.Rd
@@ -4,7 +4,15 @@
\alias{clear_session}
\title{Resets all state generated by Keras.}
\usage{
-clear_session()
+clear_session(free_memory = TRUE)
+}
+\arguments{
+\item{free_memory}{Whether to call Python garbage collection.
+It's usually a good practice to call it to make sure
+memory used by deleted objects is immediately freed.
+However, it may take a few seconds to execute, so
+when using \code{clear_session()} in a short loop,
+you may want to skip it.}
}
\value{
\code{NULL}, invisibly, called for side effects.
diff --git a/man/image_array_save.Rd b/man/image_array_save.Rd
index 98bf8c172..e4beb4571 100644
--- a/man/image_array_save.Rd
+++ b/man/image_array_save.Rd
@@ -52,6 +52,7 @@ Other image utils: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other utils: \cr
\code{\link{audio_dataset_from_directory}()} \cr
diff --git a/man/image_from_array.Rd b/man/image_from_array.Rd
index c5405911f..5ff1a7695 100644
--- a/man/image_from_array.Rd
+++ b/man/image_from_array.Rd
@@ -50,6 +50,7 @@ Other image utils: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other utils: \cr
\code{\link{audio_dataset_from_directory}()} \cr
diff --git a/man/image_load.Rd b/man/image_load.Rd
index f081dc12c..188a7cbaf 100644
--- a/man/image_load.Rd
+++ b/man/image_load.Rd
@@ -79,6 +79,7 @@ Other image utils: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other utils: \cr
\code{\link{audio_dataset_from_directory}()} \cr
diff --git a/man/image_smart_resize.Rd b/man/image_smart_resize.Rd
index 3fb0753fb..a68d83c59 100644
--- a/man/image_smart_resize.Rd
+++ b/man/image_smart_resize.Rd
@@ -88,6 +88,7 @@ Other image utils: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other utils: \cr
\code{\link{audio_dataset_from_directory}()} \cr
diff --git a/man/image_to_array.Rd b/man/image_to_array.Rd
index c54b8041a..4eb6021b4 100644
--- a/man/image_to_array.Rd
+++ b/man/image_to_array.Rd
@@ -58,6 +58,7 @@ Other image utils: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other utils: \cr
\code{\link{audio_dataset_from_directory}()} \cr
diff --git a/man/layer_embedding.Rd b/man/layer_embedding.Rd
index ceae5c8b0..0ba352f07 100644
--- a/man/layer_embedding.Rd
+++ b/man/layer_embedding.Rd
@@ -12,6 +12,7 @@ layer_embedding(
embeddings_regularizer = NULL,
embeddings_constraint = NULL,
mask_zero = FALSE,
+ weights = NULL,
lora_rank = NULL,
...
)
@@ -43,6 +44,10 @@ If \code{mask_zero} is set to \code{TRUE}, as a consequence,
index 0 cannot be used in the vocabulary (\code{input_dim} should
equal size of vocabulary + 1).}
+\item{weights}{Optional floating-point matrix of size
+\verb{(input_dim, output_dim)}. The initial embeddings values
+to use.}
+
\item{lora_rank}{Optional integer. If set, the layer's forward pass
will implement LoRA (Low-Rank Adaptation)
with the provided rank. LoRA sets the layer's embeddings
diff --git a/man/layer_random_zoom.Rd b/man/layer_random_zoom.Rd
index 9e5f9f031..695fc657b 100644
--- a/man/layer_random_zoom.Rd
+++ b/man/layer_random_zoom.Rd
@@ -64,7 +64,7 @@ Note that torch backend does not support \code{"wrap"}.
\item{seed}{Integer. Used to create a random seed.}
-\item{fill_value}{a float represents the value to be filled outside
+\item{fill_value}{a float that represents the value to be filled outside
the boundaries when \code{fill_mode="constant"}.}
\item{data_format}{string, either \code{"channels_last"} or \code{"channels_first"}.
diff --git a/man/layer_resizing.Rd b/man/layer_resizing.Rd
index 4a0badad8..867087d7b 100644
--- a/man/layer_resizing.Rd
+++ b/man/layer_resizing.Rd
@@ -10,6 +10,9 @@ layer_resizing(
width,
interpolation = "bilinear",
crop_to_aspect_ratio = FALSE,
+ pad_to_aspect_ratio = FALSE,
+ fill_mode = "constant",
+ fill_value = 0,
data_format = NULL,
...
)
@@ -33,6 +36,18 @@ largest possible window in the image (of size \verb{(height, width)})
that matches the target aspect ratio. By default
(\code{crop_to_aspect_ratio=FALSE}), aspect ratio may not be preserved.}
+\item{pad_to_aspect_ratio}{If \code{TRUE}, pad the images without aspect
+ratio distortion. When the original aspect ratio differs
+from the target aspect ratio, the output image will be
+evenly padded on the short side.}
+
+\item{fill_mode}{When using \code{pad_to_aspect_ratio=TRUE}, padded areas
+are filled according to the given mode. Only \code{"constant"} is
+supported at this time
+(fill with constant value, equal to \code{fill_value}).}
+
+\item{fill_value}{Float. Padding value to use when \code{pad_to_aspect_ratio=TRUE}.}
+
\item{data_format}{string, either \code{"channels_last"} or \code{"channels_first"}.
The ordering of the dimensions in the inputs. \code{"channels_last"}
corresponds to inputs with shape \verb{(batch, height, width, channels)}
diff --git a/man/layer_tfsm.Rd b/man/layer_tfsm.Rd
index aa0f4c760..bbe59b65e 100644
--- a/man/layer_tfsm.Rd
+++ b/man/layer_tfsm.Rd
@@ -59,8 +59,8 @@ model |> export_savedmodel("path/to/artifact")
## Output Type:
## TensorSpec(shape=(None, 10), dtype=tf.float32, name=None)
## Captures:
-## 129813643620448: TensorSpec(shape=(), dtype=tf.resource, name=None)
-## 129813643612000: TensorSpec(shape=(), dtype=tf.resource, name=None)
+## 133110437052480: TensorSpec(shape=(), dtype=tf.resource, name=None)
+## 133110437056176: TensorSpec(shape=(), dtype=tf.resource, name=None)
}\if{html}{\out{}}
diff --git a/man/loss_binary_crossentropy.Rd b/man/loss_binary_crossentropy.Rd
index db4be3745..f16189123 100644
--- a/man/loss_binary_crossentropy.Rd
+++ b/man/loss_binary_crossentropy.Rd
@@ -157,6 +157,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -169,6 +170,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_binary_focal_crossentropy.Rd b/man/loss_binary_focal_crossentropy.Rd
index 28b83c06a..121470a77 100644
--- a/man/loss_binary_focal_crossentropy.Rd
+++ b/man/loss_binary_focal_crossentropy.Rd
@@ -235,6 +235,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -247,6 +248,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_categorical_crossentropy.Rd b/man/loss_categorical_crossentropy.Rd
index 944f60807..5a692bd5b 100644
--- a/man/loss_categorical_crossentropy.Rd
+++ b/man/loss_categorical_crossentropy.Rd
@@ -119,6 +119,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -131,6 +132,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_categorical_focal_crossentropy.Rd b/man/loss_categorical_focal_crossentropy.Rd
index ae32c7699..fe05fc361 100644
--- a/man/loss_categorical_focal_crossentropy.Rd
+++ b/man/loss_categorical_focal_crossentropy.Rd
@@ -162,6 +162,7 @@ Other losses: \cr
\code{\link{loss_categorical_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -174,6 +175,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_categorical_hinge.Rd b/man/loss_categorical_hinge.Rd
index f6ac013f8..5732a0a13 100644
--- a/man/loss_categorical_hinge.Rd
+++ b/man/loss_categorical_hinge.Rd
@@ -57,6 +57,7 @@ Other losses: \cr
\code{\link{loss_categorical_crossentropy}()} \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -69,6 +70,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_cosine_similarity.Rd b/man/loss_cosine_similarity.Rd
index 0c7ed13b6..1f44d9d3a 100644
--- a/man/loss_cosine_similarity.Rd
+++ b/man/loss_cosine_similarity.Rd
@@ -70,6 +70,7 @@ Other losses: \cr
\code{\link{loss_categorical_crossentropy}()} \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -82,6 +83,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_ctc.Rd b/man/loss_ctc.Rd
index e0f7004a1..8f092221d 100644
--- a/man/loss_ctc.Rd
+++ b/man/loss_ctc.Rd
@@ -35,3 +35,43 @@ CTC loss value.
\description{
CTC (Connectionist Temporal Classification) loss.
}
+\seealso{
+Other losses: \cr
+\code{\link{Loss}()} \cr
+\code{\link{loss_binary_crossentropy}()} \cr
+\code{\link{loss_binary_focal_crossentropy}()} \cr
+\code{\link{loss_categorical_crossentropy}()} \cr
+\code{\link{loss_categorical_focal_crossentropy}()} \cr
+\code{\link{loss_categorical_hinge}()} \cr
+\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_dice}()} \cr
+\code{\link{loss_hinge}()} \cr
+\code{\link{loss_huber}()} \cr
+\code{\link{loss_kl_divergence}()} \cr
+\code{\link{loss_log_cosh}()} \cr
+\code{\link{loss_mean_absolute_error}()} \cr
+\code{\link{loss_mean_absolute_percentage_error}()} \cr
+\code{\link{loss_mean_squared_error}()} \cr
+\code{\link{loss_mean_squared_logarithmic_error}()} \cr
+\code{\link{loss_poisson}()} \cr
+\code{\link{loss_sparse_categorical_crossentropy}()} \cr
+\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
+\code{\link{metric_binary_crossentropy}()} \cr
+\code{\link{metric_binary_focal_crossentropy}()} \cr
+\code{\link{metric_categorical_crossentropy}()} \cr
+\code{\link{metric_categorical_focal_crossentropy}()} \cr
+\code{\link{metric_categorical_hinge}()} \cr
+\code{\link{metric_hinge}()} \cr
+\code{\link{metric_huber}()} \cr
+\code{\link{metric_kl_divergence}()} \cr
+\code{\link{metric_log_cosh}()} \cr
+\code{\link{metric_mean_absolute_error}()} \cr
+\code{\link{metric_mean_absolute_percentage_error}()} \cr
+\code{\link{metric_mean_squared_error}()} \cr
+\code{\link{metric_mean_squared_logarithmic_error}()} \cr
+\code{\link{metric_poisson}()} \cr
+\code{\link{metric_sparse_categorical_crossentropy}()} \cr
+\code{\link{metric_squared_hinge}()} \cr
+}
+\concept{losses}
diff --git a/man/loss_dice.Rd b/man/loss_dice.Rd
index 16465e9d3..d04cea080 100644
--- a/man/loss_dice.Rd
+++ b/man/loss_dice.Rd
@@ -49,6 +49,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
\code{\link{loss_kl_divergence}()} \cr
@@ -60,6 +61,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_hinge.Rd b/man/loss_hinge.Rd
index 677b975df..64e94860d 100644
--- a/man/loss_hinge.Rd
+++ b/man/loss_hinge.Rd
@@ -64,6 +64,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_huber}()} \cr
\code{\link{loss_kl_divergence}()} \cr
@@ -75,6 +76,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_huber.Rd b/man/loss_huber.Rd
index d702fea45..59c90839e 100644
--- a/man/loss_huber.Rd
+++ b/man/loss_huber.Rd
@@ -67,6 +67,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_kl_divergence}()} \cr
@@ -78,6 +79,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_kl_divergence.Rd b/man/loss_kl_divergence.Rd
index 2e8a66f6a..7f786fd25 100644
--- a/man/loss_kl_divergence.Rd
+++ b/man/loss_kl_divergence.Rd
@@ -33,6 +33,10 @@ Formula:
\if{html}{\out{}}\preformatted{loss <- y_true * log(y_true / y_pred)
}\if{html}{\out{
}}
+
+\code{y_true} and \code{y_pred} are expected to be probability
+distributions, with values between 0 and 1. They will get
+clipped to the \verb{[0, 1]} range.
}
\section{Examples}{
\if{html}{\out{}}\preformatted{y_true <- random_uniform(c(2, 3), 0, 2)
@@ -59,6 +63,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -70,6 +75,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_log_cosh.Rd b/man/loss_log_cosh.Rd
index d34d85d46..e84a002eb 100644
--- a/man/loss_log_cosh.Rd
+++ b/man/loss_log_cosh.Rd
@@ -60,6 +60,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -71,6 +72,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_mean_absolute_error.Rd b/man/loss_mean_absolute_error.Rd
index 52746701e..057b5d09f 100644
--- a/man/loss_mean_absolute_error.Rd
+++ b/man/loss_mean_absolute_error.Rd
@@ -54,6 +54,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -65,6 +66,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_mean_absolute_percentage_error.Rd b/man/loss_mean_absolute_percentage_error.Rd
index 06c03acb9..3d3f1e783 100644
--- a/man/loss_mean_absolute_percentage_error.Rd
+++ b/man/loss_mean_absolute_percentage_error.Rd
@@ -59,6 +59,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -70,6 +71,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_mean_squared_error.Rd b/man/loss_mean_squared_error.Rd
index 7b09c50f9..1302f0c3b 100644
--- a/man/loss_mean_squared_error.Rd
+++ b/man/loss_mean_squared_error.Rd
@@ -54,6 +54,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -65,6 +66,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_mean_squared_logarithmic_error.Rd b/man/loss_mean_squared_logarithmic_error.Rd
index 84235d091..4d67afe5c 100644
--- a/man/loss_mean_squared_logarithmic_error.Rd
+++ b/man/loss_mean_squared_logarithmic_error.Rd
@@ -58,6 +58,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -69,6 +70,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_poisson.Rd b/man/loss_poisson.Rd
index df5b0dc7a..636cceefb 100644
--- a/man/loss_poisson.Rd
+++ b/man/loss_poisson.Rd
@@ -59,6 +59,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -70,6 +71,7 @@ Other losses: \cr
\code{\link{loss_mean_squared_logarithmic_error}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_sparse_categorical_crossentropy.Rd b/man/loss_sparse_categorical_crossentropy.Rd
index cb1943410..ae7c71e7b 100644
--- a/man/loss_sparse_categorical_crossentropy.Rd
+++ b/man/loss_sparse_categorical_crossentropy.Rd
@@ -133,6 +133,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -144,6 +145,7 @@ Other losses: \cr
\code{\link{loss_mean_squared_logarithmic_error}()} \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_squared_hinge.Rd b/man/loss_squared_hinge.Rd
index 4962ae741..fd6d43ddc 100644
--- a/man/loss_squared_hinge.Rd
+++ b/man/loss_squared_hinge.Rd
@@ -59,6 +59,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -70,6 +71,7 @@ Other losses: \cr
\code{\link{loss_mean_squared_logarithmic_error}()} \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/loss_tversky.Rd b/man/loss_tversky.Rd
new file mode 100644
index 000000000..259ee63aa
--- /dev/null
+++ b/man/loss_tversky.Rd
@@ -0,0 +1,95 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/losses.R
+\name{loss_tversky}
+\alias{loss_tversky}
+\title{Computes the Tversky loss value between \code{y_true} and \code{y_pred}.}
+\usage{
+loss_tversky(
+ y_true,
+ y_pred,
+ ...,
+ alpha = 0.5,
+ beta = 0.5,
+ reduction = "sum_over_batch_size",
+ name = "tversky"
+)
+}
+\arguments{
+\item{y_true}{tensor of true targets.}
+
+\item{y_pred}{tensor of predicted targets.}
+
+\item{...}{For forward/backward compatability.}
+
+\item{alpha}{coefficient controlling incidence of false positives.}
+
+\item{beta}{coefficient controlling incidence of false negatives.}
+
+\item{reduction}{Type of reduction to apply to the loss. In almost all cases
+this should be \code{"sum_over_batch_size"}.
+Supported options are \code{"sum"}, \code{"sum_over_batch_size"} or \code{NULL}.}
+
+\item{name}{String, name for the object}
+}
+\value{
+Tversky loss value.
+}
+\description{
+This loss function is weighted by the alpha and beta coefficients
+that penalize false positives and false negatives.
+
+With \code{alpha=0.5} and \code{beta=0.5}, the loss value becomes equivalent to
+Dice Loss.
+
+This loss function is weighted by the alpha and beta coefficients
+that penalize false positives and false negatives.
+
+With \code{alpha=0.5} and \code{beta=0.5}, the loss value becomes equivalent to
+Dice Loss.
+}
+\section{Reference}{
+\itemize{
+\item \href{https://arxiv.org/abs/1706.05721}{Salehi et al., 2017}
+}
+}
+
+\seealso{
+Other losses: \cr
+\code{\link{Loss}()} \cr
+\code{\link{loss_binary_crossentropy}()} \cr
+\code{\link{loss_binary_focal_crossentropy}()} \cr
+\code{\link{loss_categorical_crossentropy}()} \cr
+\code{\link{loss_categorical_focal_crossentropy}()} \cr
+\code{\link{loss_categorical_hinge}()} \cr
+\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
+\code{\link{loss_dice}()} \cr
+\code{\link{loss_hinge}()} \cr
+\code{\link{loss_huber}()} \cr
+\code{\link{loss_kl_divergence}()} \cr
+\code{\link{loss_log_cosh}()} \cr
+\code{\link{loss_mean_absolute_error}()} \cr
+\code{\link{loss_mean_absolute_percentage_error}()} \cr
+\code{\link{loss_mean_squared_error}()} \cr
+\code{\link{loss_mean_squared_logarithmic_error}()} \cr
+\code{\link{loss_poisson}()} \cr
+\code{\link{loss_sparse_categorical_crossentropy}()} \cr
+\code{\link{loss_squared_hinge}()} \cr
+\code{\link{metric_binary_crossentropy}()} \cr
+\code{\link{metric_binary_focal_crossentropy}()} \cr
+\code{\link{metric_categorical_crossentropy}()} \cr
+\code{\link{metric_categorical_focal_crossentropy}()} \cr
+\code{\link{metric_categorical_hinge}()} \cr
+\code{\link{metric_hinge}()} \cr
+\code{\link{metric_huber}()} \cr
+\code{\link{metric_kl_divergence}()} \cr
+\code{\link{metric_log_cosh}()} \cr
+\code{\link{metric_mean_absolute_error}()} \cr
+\code{\link{metric_mean_absolute_percentage_error}()} \cr
+\code{\link{metric_mean_squared_error}()} \cr
+\code{\link{metric_mean_squared_logarithmic_error}()} \cr
+\code{\link{metric_poisson}()} \cr
+\code{\link{metric_sparse_categorical_crossentropy}()} \cr
+\code{\link{metric_squared_hinge}()} \cr
+}
+\concept{losses}
diff --git a/man/metric_binary_crossentropy.Rd b/man/metric_binary_crossentropy.Rd
index 5a264d0ce..494b9e27a 100644
--- a/man/metric_binary_crossentropy.Rd
+++ b/man/metric_binary_crossentropy.Rd
@@ -93,6 +93,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -105,6 +106,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
\code{\link{metric_categorical_focal_crossentropy}()} \cr
diff --git a/man/metric_binary_focal_crossentropy.Rd b/man/metric_binary_focal_crossentropy.Rd
index 94434b31f..20fe06b39 100644
--- a/man/metric_binary_focal_crossentropy.Rd
+++ b/man/metric_binary_focal_crossentropy.Rd
@@ -81,6 +81,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -93,6 +94,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
\code{\link{metric_categorical_focal_crossentropy}()} \cr
diff --git a/man/metric_categorical_crossentropy.Rd b/man/metric_categorical_crossentropy.Rd
index 36596591a..bd3ece6c6 100644
--- a/man/metric_categorical_crossentropy.Rd
+++ b/man/metric_categorical_crossentropy.Rd
@@ -108,6 +108,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -120,6 +121,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_focal_crossentropy}()} \cr
diff --git a/man/metric_categorical_focal_crossentropy.Rd b/man/metric_categorical_focal_crossentropy.Rd
index 6cdf74144..b8d0b5383 100644
--- a/man/metric_categorical_focal_crossentropy.Rd
+++ b/man/metric_categorical_focal_crossentropy.Rd
@@ -67,6 +67,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -79,6 +80,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_categorical_hinge.Rd b/man/metric_categorical_hinge.Rd
index 0cfc67939..536adc4ee 100644
--- a/man/metric_categorical_hinge.Rd
+++ b/man/metric_categorical_hinge.Rd
@@ -72,6 +72,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -84,6 +85,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_hinge.Rd b/man/metric_hinge.Rd
index 878d3d1af..07afcf433 100644
--- a/man/metric_hinge.Rd
+++ b/man/metric_hinge.Rd
@@ -71,6 +71,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -83,6 +84,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_huber.Rd b/man/metric_huber.Rd
index 1aa1bdefe..9f14f9ff8 100644
--- a/man/metric_huber.Rd
+++ b/man/metric_huber.Rd
@@ -48,6 +48,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -60,6 +61,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_kl_divergence.Rd b/man/metric_kl_divergence.Rd
index 23001ee9e..5e6947617 100644
--- a/man/metric_kl_divergence.Rd
+++ b/man/metric_kl_divergence.Rd
@@ -29,6 +29,10 @@ Formula:
\if{html}{\out{
}}\preformatted{loss <- y_true * log(y_true / y_pred)
}\if{html}{\out{
}}
+
+\code{y_true} and \code{y_pred} are expected to be probability
+distributions, with values between 0 and 1. They will get
+clipped to the \verb{[0, 1]} range.
}
\section{Usage}{
Standalone usage:
@@ -73,6 +77,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -85,6 +90,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_log_cosh.Rd b/man/metric_log_cosh.Rd
index d97774997..d7da826bf 100644
--- a/man/metric_log_cosh.Rd
+++ b/man/metric_log_cosh.Rd
@@ -46,6 +46,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -58,6 +59,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_mean_absolute_error.Rd b/man/metric_mean_absolute_error.Rd
index 7760b6308..a16800711 100644
--- a/man/metric_mean_absolute_error.Rd
+++ b/man/metric_mean_absolute_error.Rd
@@ -80,6 +80,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -92,6 +93,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_mean_absolute_percentage_error.Rd b/man/metric_mean_absolute_percentage_error.Rd
index 32652a186..29a80936d 100644
--- a/man/metric_mean_absolute_percentage_error.Rd
+++ b/man/metric_mean_absolute_percentage_error.Rd
@@ -84,6 +84,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -96,6 +97,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_mean_squared_error.Rd b/man/metric_mean_squared_error.Rd
index 6bab00554..507ef8496 100644
--- a/man/metric_mean_squared_error.Rd
+++ b/man/metric_mean_squared_error.Rd
@@ -60,6 +60,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -72,6 +73,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_mean_squared_logarithmic_error.Rd b/man/metric_mean_squared_logarithmic_error.Rd
index bc4ca3703..644af8d2c 100644
--- a/man/metric_mean_squared_logarithmic_error.Rd
+++ b/man/metric_mean_squared_logarithmic_error.Rd
@@ -84,6 +84,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -96,6 +97,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_poisson.Rd b/man/metric_poisson.Rd
index 110b14ca3..b2f56eae9 100644
--- a/man/metric_poisson.Rd
+++ b/man/metric_poisson.Rd
@@ -75,6 +75,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -87,6 +88,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_sparse_categorical_crossentropy.Rd b/man/metric_sparse_categorical_crossentropy.Rd
index 022ff5d8c..911a74568 100644
--- a/man/metric_sparse_categorical_crossentropy.Rd
+++ b/man/metric_sparse_categorical_crossentropy.Rd
@@ -104,6 +104,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -116,6 +117,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/metric_squared_hinge.Rd b/man/metric_squared_hinge.Rd
index 98251825f..8dac6e548 100644
--- a/man/metric_squared_hinge.Rd
+++ b/man/metric_squared_hinge.Rd
@@ -71,6 +71,7 @@ Other losses: \cr
\code{\link{loss_categorical_focal_crossentropy}()} \cr
\code{\link{loss_categorical_hinge}()} \cr
\code{\link{loss_cosine_similarity}()} \cr
+\code{\link{loss_ctc}()} \cr
\code{\link{loss_dice}()} \cr
\code{\link{loss_hinge}()} \cr
\code{\link{loss_huber}()} \cr
@@ -83,6 +84,7 @@ Other losses: \cr
\code{\link{loss_poisson}()} \cr
\code{\link{loss_sparse_categorical_crossentropy}()} \cr
\code{\link{loss_squared_hinge}()} \cr
+\code{\link{loss_tversky}()} \cr
\code{\link{metric_binary_crossentropy}()} \cr
\code{\link{metric_binary_focal_crossentropy}()} \cr
\code{\link{metric_categorical_crossentropy}()} \cr
diff --git a/man/op_abs.Rd b/man/op_abs.Rd
index 8568a258d..f213c3651 100644
--- a/man/op_abs.Rd
+++ b/man/op_abs.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -130,6 +131,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -323,6 +329,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_add.Rd b/man/op_add.Rd
index 4e380d11d..cc330c4ab 100644
--- a/man/op_add.Rd
+++ b/man/op_add.Rd
@@ -101,6 +101,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -175,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -202,6 +204,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -248,6 +251,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -262,6 +266,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -296,6 +301,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -368,6 +374,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -413,6 +420,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_all.Rd b/man/op_all.Rd
index cfde0f9dc..176680b72 100644
--- a/man/op_all.Rd
+++ b/man/op_all.Rd
@@ -17,7 +17,7 @@ for the last to the first axis.}
\item{keepdims}{If \code{TRUE}, axes which are reduced are left in the result as
dimensions with size one. With this option, the result will
-broadcast correctly against the input array. Defaults to\code{FALSE}.}
+broadcast correctly against the input array. Defaults to \code{FALSE}.}
}
\value{
The tensor containing the logical AND reduction over the \code{axis}.
@@ -96,6 +96,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -170,6 +171,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -197,6 +199,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -243,6 +246,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -257,6 +261,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -291,6 +296,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -363,6 +369,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -408,6 +415,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_any.Rd b/man/op_any.Rd
index 3a299ac86..83b629a6f 100644
--- a/man/op_any.Rd
+++ b/man/op_any.Rd
@@ -118,6 +118,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -192,6 +193,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -219,6 +221,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -265,6 +268,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -279,6 +283,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -313,6 +318,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -385,6 +391,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -430,6 +437,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_append.Rd b/man/op_append.Rd
index 416f9fe91..bcf5636fa 100644
--- a/man/op_append.Rd
+++ b/man/op_append.Rd
@@ -89,6 +89,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -163,6 +164,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -190,6 +192,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -236,6 +239,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -250,6 +254,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -284,6 +289,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -356,6 +362,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -401,6 +408,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_arange.Rd b/man/op_arange.Rd
index e465b04be..84932bfa8 100644
--- a/man/op_arange.Rd
+++ b/man/op_arange.Rd
@@ -113,6 +113,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -187,6 +188,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -214,6 +216,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -260,6 +263,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -274,6 +278,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -308,6 +313,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -380,6 +386,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -425,6 +432,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_arccos.Rd b/man/op_arccos.Rd
index 2e87298f0..cfec1a734 100644
--- a/man/op_arccos.Rd
+++ b/man/op_arccos.Rd
@@ -61,6 +61,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -135,6 +136,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -162,6 +164,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -208,6 +211,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -222,6 +226,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -256,6 +261,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -328,6 +334,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -373,6 +380,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_arccosh.Rd b/man/op_arccosh.Rd
index a6a31e22f..79227aeb7 100644
--- a/man/op_arccosh.Rd
+++ b/man/op_arccosh.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -130,6 +131,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -323,6 +329,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_arcsin.Rd b/man/op_arcsin.Rd
index 256503ab8..a3603dc58 100644
--- a/man/op_arcsin.Rd
+++ b/man/op_arcsin.Rd
@@ -61,6 +61,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -135,6 +136,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -162,6 +164,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -208,6 +211,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -222,6 +226,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -256,6 +261,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -328,6 +334,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -373,6 +380,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_arcsinh.Rd b/man/op_arcsinh.Rd
index 790f9c326..863ba5f3f 100644
--- a/man/op_arcsinh.Rd
+++ b/man/op_arcsinh.Rd
@@ -60,6 +60,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -134,6 +135,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -161,6 +163,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -207,6 +210,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -221,6 +225,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -255,6 +260,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -327,6 +333,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -372,6 +379,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_arctan.Rd b/man/op_arctan.Rd
index 8e33a67ce..28fd85b22 100644
--- a/man/op_arctan.Rd
+++ b/man/op_arctan.Rd
@@ -61,6 +61,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -135,6 +136,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -162,6 +164,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -208,6 +211,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -222,6 +226,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -256,6 +261,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -328,6 +334,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -373,6 +380,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_arctan2.Rd b/man/op_arctan2.Rd
index 36ee7c458..493379ce1 100644
--- a/man/op_arctan2.Rd
+++ b/man/op_arctan2.Rd
@@ -94,6 +94,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -168,6 +169,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -195,6 +197,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -241,6 +244,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -255,6 +259,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -289,6 +294,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -361,6 +367,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -406,6 +413,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_arctanh.Rd b/man/op_arctanh.Rd
index ba77b0044..fd64ee260 100644
--- a/man/op_arctanh.Rd
+++ b/man/op_arctanh.Rd
@@ -50,6 +50,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -197,6 +200,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -211,6 +215,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -245,6 +250,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_argmax.Rd b/man/op_argmax.Rd
index 4194f6fe2..23b7b518c 100644
--- a/man/op_argmax.Rd
+++ b/man/op_argmax.Rd
@@ -4,13 +4,16 @@
\alias{op_argmax}
\title{Returns the indices of the maximum values along an axis.}
\usage{
-op_argmax(x, axis = NULL)
+op_argmax(x, axis = NULL, keepdims = FALSE)
}
\arguments{
\item{x}{Input tensor.}
\item{axis}{By default, the index is into the flattened tensor, otherwise
along the specified axis.}
+
+\item{keepdims}{If this is set to \code{TRUE}, the axes which are reduced are left
+in the result as dimensions with size one. Defaults to \code{FALSE}.}
}
\value{
Tensor of indices. It has the same shape as \code{x}, with the dimension
@@ -92,6 +95,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -166,6 +170,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -193,6 +198,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -239,6 +245,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -253,6 +260,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -287,6 +295,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -359,6 +368,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -404,6 +414,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_argmin.Rd b/man/op_argmin.Rd
index 86eea3db6..9ac9f9f0a 100644
--- a/man/op_argmin.Rd
+++ b/man/op_argmin.Rd
@@ -4,13 +4,16 @@
\alias{op_argmin}
\title{Returns the indices of the minimum values along an axis.}
\usage{
-op_argmin(x, axis = NULL)
+op_argmin(x, axis = NULL, keepdims = FALSE)
}
\arguments{
\item{x}{Input tensor.}
\item{axis}{By default, the index is into the flattened tensor, otherwise
along the specified axis.}
+
+\item{keepdims}{If this is set to \code{TRUE}, the axes which are reduced are left
+in the result as dimensions with size one. Defaults to \code{FALSE}.}
}
\value{
Tensor of indices. It has the same shape as \code{x}, with the dimension
@@ -91,6 +94,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -165,6 +169,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -192,6 +197,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -238,6 +244,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -252,6 +259,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -286,6 +294,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -358,6 +367,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -403,6 +413,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_argsort.Rd b/man/op_argsort.Rd
index c687e7975..bf03c0d97 100644
--- a/man/op_argsort.Rd
+++ b/man/op_argsort.Rd
@@ -90,6 +90,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -164,6 +165,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -191,6 +193,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -237,6 +240,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -251,6 +255,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -285,6 +290,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -357,6 +363,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -402,6 +409,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_array.Rd b/man/op_array.Rd
index 245cf6000..7e58af4be 100644
--- a/man/op_array.Rd
+++ b/man/op_array.Rd
@@ -75,6 +75,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -149,6 +150,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -176,6 +178,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -222,6 +225,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -236,6 +240,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -270,6 +275,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -342,6 +348,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -387,6 +394,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_average.Rd b/man/op_average.Rd
index 1a88264cf..70ea12f7a 100644
--- a/man/op_average.Rd
+++ b/man/op_average.Rd
@@ -77,16 +77,15 @@ data
}\if{html}{\out{
}}
-\if{html}{\out{}}\preformatted{# Error: Axis must be specified when shapes of a and weights differ.
+\if{html}{\out{
}}\preformatted{# Error: Axis must be specified when shapes of x and weights differ.
try(op_average(
data,
weights = op_array(c(1/4, 3/4))
))
}\if{html}{\out{
}}
-\if{html}{\out{
}}\preformatted{## Error in py_call_impl(callable, call_args$unnamed, call_args$named) :
-## tensorflow.python.framework.errors_impl.InvalidArgumentError: Expected 'tf.Tensor(False, shape=(), dtype=bool)' to be true. Summarized data: 3, 2
-## 2
+\if{html}{\out{
}}\preformatted{## Error in op_average(data, weights = op_array(c(1/4, 3/4))) :
+## Axis must be specified when shapes of x and weights differ.
}\if{html}{\out{
}}
}
@@ -126,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -200,6 +200,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -227,6 +228,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -273,6 +275,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -287,6 +290,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -321,6 +325,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -393,6 +398,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -438,6 +444,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_average_pool.Rd b/man/op_average_pool.Rd
index efe5dc145..d02a3dc95 100644
--- a/man/op_average_pool.Rd
+++ b/man/op_average_pool.Rd
@@ -126,6 +126,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -140,6 +141,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -174,6 +176,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -246,6 +249,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -291,6 +295,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_batch_normalization.Rd b/man/op_batch_normalization.Rd
index e7bd6f2a9..0834e56ed 100644
--- a/man/op_batch_normalization.Rd
+++ b/man/op_batch_normalization.Rd
@@ -140,6 +140,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -154,6 +155,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -188,6 +190,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -260,6 +263,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -305,6 +309,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_binary_crossentropy.Rd b/man/op_binary_crossentropy.Rd
index d127922a4..67975ba61 100644
--- a/man/op_binary_crossentropy.Rd
+++ b/man/op_binary_crossentropy.Rd
@@ -118,6 +118,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -132,6 +133,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -166,6 +168,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -238,6 +241,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -283,6 +287,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_bincount.Rd b/man/op_bincount.Rd
index 094fab8ed..9b2ba8ba1 100644
--- a/man/op_bincount.Rd
+++ b/man/op_bincount.Rd
@@ -106,6 +106,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -180,6 +181,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -207,6 +209,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -253,6 +256,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -267,6 +271,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -301,6 +306,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -373,6 +379,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -418,6 +425,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_broadcast_to.Rd b/man/op_broadcast_to.Rd
index 5e2a05529..e786b41c5 100644
--- a/man/op_broadcast_to.Rd
+++ b/man/op_broadcast_to.Rd
@@ -65,6 +65,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -139,6 +140,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -166,6 +168,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -212,6 +215,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -226,6 +230,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -260,6 +265,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -332,6 +338,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -377,6 +384,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_cast.Rd b/man/op_cast.Rd
index 3dec81aff..204b8ffae 100644
--- a/man/op_cast.Rd
+++ b/man/op_cast.Rd
@@ -96,6 +96,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -110,6 +111,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -144,6 +146,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -216,6 +219,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -261,6 +265,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_categorical_crossentropy.Rd b/man/op_categorical_crossentropy.Rd
index 68acf30e8..fcdba46d0 100644
--- a/man/op_categorical_crossentropy.Rd
+++ b/man/op_categorical_crossentropy.Rd
@@ -128,6 +128,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -142,6 +143,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -176,6 +178,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -248,6 +251,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -293,6 +297,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_ceil.Rd b/man/op_ceil.Rd
index d5bae9a50..170da71c7 100644
--- a/man/op_ceil.Rd
+++ b/man/op_ceil.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -152,6 +154,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -363,6 +370,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_cholesky.Rd b/man/op_cholesky.Rd
index 4aff8fe96..4a4846e77 100644
--- a/man/op_cholesky.Rd
+++ b/man/op_cholesky.Rd
@@ -20,6 +20,7 @@ Computes the Cholesky decomposition of a positive semi-definite matrix.
Other linear algebra ops: \cr
\code{\link{op_det}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_lu_factor}()} \cr
\code{\link{op_norm}()} \cr
@@ -67,6 +68,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -81,6 +83,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -115,6 +118,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -187,6 +191,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -232,6 +237,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_clip.Rd b/man/op_clip.Rd
index dfda3ae68..84267f1aa 100644
--- a/man/op_clip.Rd
+++ b/man/op_clip.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -130,6 +131,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -323,6 +329,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_concatenate.Rd b/man/op_concatenate.Rd
index 044482b56..d1f8d60e2 100644
--- a/man/op_concatenate.Rd
+++ b/man/op_concatenate.Rd
@@ -52,6 +52,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -126,6 +127,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -153,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -199,6 +202,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -213,6 +217,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -247,6 +252,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -319,6 +325,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -364,6 +371,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_cond.Rd b/man/op_cond.Rd
index b740e3681..ca7cbec59 100644
--- a/man/op_cond.Rd
+++ b/man/op_cond.Rd
@@ -138,6 +138,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -152,6 +153,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -186,6 +188,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -258,6 +261,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -303,6 +307,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_conj.Rd b/man/op_conj.Rd
index 5cbce8898..1ad005724 100644
--- a/man/op_conj.Rd
+++ b/man/op_conj.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -152,6 +154,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -363,6 +370,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_conv.Rd b/man/op_conv.Rd
index 9d91e3a26..78611a514 100644
--- a/man/op_conv.Rd
+++ b/man/op_conv.Rd
@@ -130,6 +130,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -144,6 +145,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -178,6 +180,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -250,6 +253,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -295,6 +299,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_conv_transpose.Rd b/man/op_conv_transpose.Rd
index 009016c7e..f0db48479 100644
--- a/man/op_conv_transpose.Rd
+++ b/man/op_conv_transpose.Rd
@@ -139,6 +139,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -153,6 +154,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -187,6 +189,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -259,6 +262,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -304,6 +308,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_convert_to_numpy.Rd b/man/op_convert_to_numpy.Rd
index 351e57ed6..c03bc9412 100644
--- a/man/op_convert_to_numpy.Rd
+++ b/man/op_convert_to_numpy.Rd
@@ -78,6 +78,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -92,6 +93,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -126,6 +128,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -243,6 +247,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_convert_to_tensor.Rd b/man/op_convert_to_tensor.Rd
index f8c11240d..56b390062 100644
--- a/man/op_convert_to_tensor.Rd
+++ b/man/op_convert_to_tensor.Rd
@@ -103,6 +103,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -117,6 +118,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -151,6 +153,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -223,6 +226,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -268,6 +272,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_copy.Rd b/man/op_copy.Rd
index 2a09dc062..48709ddac 100644
--- a/man/op_copy.Rd
+++ b/man/op_copy.Rd
@@ -50,6 +50,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -197,6 +200,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -211,6 +215,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -245,6 +250,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_correlate.Rd b/man/op_correlate.Rd
index bd3b5f79d..304d5d5ba 100644
--- a/man/op_correlate.Rd
+++ b/man/op_correlate.Rd
@@ -55,6 +55,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -202,6 +205,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_cos.Rd b/man/op_cos.Rd
index dca32a979..df790f8f8 100644
--- a/man/op_cos.Rd
+++ b/man/op_cos.Rd
@@ -50,6 +50,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -197,6 +200,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -211,6 +215,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -245,6 +250,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_cosh.Rd b/man/op_cosh.Rd
index c634f734a..1e8926cd7 100644
--- a/man/op_cosh.Rd
+++ b/man/op_cosh.Rd
@@ -50,6 +50,7 @@ Other numpy ops: \cr
\code{\link{op_cos}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -197,6 +200,7 @@ Other ops: \cr
\code{\link{op_cos}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -211,6 +215,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -245,6 +250,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_count_nonzero.Rd b/man/op_count_nonzero.Rd
index f4f08fe6a..a1b86f44a 100644
--- a/man/op_count_nonzero.Rd
+++ b/man/op_count_nonzero.Rd
@@ -78,6 +78,7 @@ Other numpy ops: \cr
\code{\link{op_cos}()} \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -152,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -179,6 +181,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -225,6 +228,7 @@ Other ops: \cr
\code{\link{op_cos}()} \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -239,6 +243,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -273,6 +278,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -345,6 +351,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -390,6 +397,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_cross.Rd b/man/op_cross.Rd
index 9e4619e54..c630b28e0 100644
--- a/man/op_cross.Rd
+++ b/man/op_cross.Rd
@@ -79,6 +79,7 @@ Other numpy ops: \cr
\code{\link{op_cos}()} \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -153,6 +154,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -180,6 +182,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -226,6 +229,7 @@ Other ops: \cr
\code{\link{op_cos}()} \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -240,6 +244,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -274,6 +279,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -346,6 +352,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -391,6 +398,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_ctc_decode.Rd b/man/op_ctc_decode.Rd
new file mode 100644
index 000000000..d1408c1dc
--- /dev/null
+++ b/man/op_ctc_decode.Rd
@@ -0,0 +1,410 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/ops.R
+\name{op_ctc_decode}
+\alias{op_ctc_decode}
+\title{Decodes the output of a CTC model.}
+\usage{
+op_ctc_decode(
+ inputs,
+ sequence_lengths,
+ strategy,
+ beam_width = 100L,
+ top_paths = 1L,
+ merge_repeated = TRUE,
+ mask_index = NULL
+)
+}
+\arguments{
+\item{inputs}{A tensor of shape \verb{(batch_size, max_length, num_classes)}
+containing the logits (output of the model).}
+
+\item{sequence_lengths}{A tensor of shape \code{(batch_size)} containing the
+sequence lengths for the batch.}
+
+\item{strategy}{A string for the decoding strategy. Supported values are
+\code{"greedy"} and \code{"beam_search"}.}
+
+\item{beam_width}{An integer scalar beam width used in beam search.
+Defaults to \code{100}.}
+
+\item{top_paths}{An integer scalar, the number of top paths to return.
+Defaults to \code{1}.}
+
+\item{merge_repeated}{A boolean scalar, whether to merge repeated
+labels in the output. Defaults to \code{TRUE}.}
+
+\item{mask_index}{An integer scalar, the index of the mask character in
+the vocabulary. Defaults to \code{NULL}.}
+}
+\value{
+A list containing:
+\itemize{
+\item A list of decoded sequences.
+\item A list of the negative of the sum of the probability logits
+(if strategy is \code{"greedy"}) or the log probability (if strategy is
+\code{"beam_search"}) for each sequence.
+}
+}
+\description{
+Decodes the output of a CTC model.
+}
+\seealso{
+Other numpy ops: \cr
+\code{\link{op_abs}()} \cr
+\code{\link{op_add}()} \cr
+\code{\link{op_all}()} \cr
+\code{\link{op_any}()} \cr
+\code{\link{op_append}()} \cr
+\code{\link{op_arange}()} \cr
+\code{\link{op_arccos}()} \cr
+\code{\link{op_arccosh}()} \cr
+\code{\link{op_arcsin}()} \cr
+\code{\link{op_arcsinh}()} \cr
+\code{\link{op_arctan}()} \cr
+\code{\link{op_arctan2}()} \cr
+\code{\link{op_arctanh}()} \cr
+\code{\link{op_argmax}()} \cr
+\code{\link{op_argmin}()} \cr
+\code{\link{op_argsort}()} \cr
+\code{\link{op_array}()} \cr
+\code{\link{op_average}()} \cr
+\code{\link{op_bincount}()} \cr
+\code{\link{op_broadcast_to}()} \cr
+\code{\link{op_ceil}()} \cr
+\code{\link{op_clip}()} \cr
+\code{\link{op_concatenate}()} \cr
+\code{\link{op_conj}()} \cr
+\code{\link{op_copy}()} \cr
+\code{\link{op_correlate}()} \cr
+\code{\link{op_cos}()} \cr
+\code{\link{op_cosh}()} \cr
+\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_cross}()} \cr
+\code{\link{op_cumprod}()} \cr
+\code{\link{op_cumsum}()} \cr
+\code{\link{op_diag}()} \cr
+\code{\link{op_diagonal}()} \cr
+\code{\link{op_diff}()} \cr
+\code{\link{op_digitize}()} \cr
+\code{\link{op_divide}()} \cr
+\code{\link{op_divide_no_nan}()} \cr
+\code{\link{op_dot}()} \cr
+\code{\link{op_einsum}()} \cr
+\code{\link{op_empty}()} \cr
+\code{\link{op_equal}()} \cr
+\code{\link{op_exp}()} \cr
+\code{\link{op_expand_dims}()} \cr
+\code{\link{op_expm1}()} \cr
+\code{\link{op_eye}()} \cr
+\code{\link{op_flip}()} \cr
+\code{\link{op_floor}()} \cr
+\code{\link{op_floor_divide}()} \cr
+\code{\link{op_full}()} \cr
+\code{\link{op_full_like}()} \cr
+\code{\link{op_get_item}()} \cr
+\code{\link{op_greater}()} \cr
+\code{\link{op_greater_equal}()} \cr
+\code{\link{op_hstack}()} \cr
+\code{\link{op_identity}()} \cr
+\code{\link{op_imag}()} \cr
+\code{\link{op_isclose}()} \cr
+\code{\link{op_isfinite}()} \cr
+\code{\link{op_isinf}()} \cr
+\code{\link{op_isnan}()} \cr
+\code{\link{op_less}()} \cr
+\code{\link{op_less_equal}()} \cr
+\code{\link{op_linspace}()} \cr
+\code{\link{op_log}()} \cr
+\code{\link{op_log10}()} \cr
+\code{\link{op_log1p}()} \cr
+\code{\link{op_log2}()} \cr
+\code{\link{op_logaddexp}()} \cr
+\code{\link{op_logical_and}()} \cr
+\code{\link{op_logical_not}()} \cr
+\code{\link{op_logical_or}()} \cr
+\code{\link{op_logical_xor}()} \cr
+\code{\link{op_logspace}()} \cr
+\code{\link{op_matmul}()} \cr
+\code{\link{op_max}()} \cr
+\code{\link{op_maximum}()} \cr
+\code{\link{op_mean}()} \cr
+\code{\link{op_median}()} \cr
+\code{\link{op_meshgrid}()} \cr
+\code{\link{op_min}()} \cr
+\code{\link{op_minimum}()} \cr
+\code{\link{op_mod}()} \cr
+\code{\link{op_moveaxis}()} \cr
+\code{\link{op_multiply}()} \cr
+\code{\link{op_nan_to_num}()} \cr
+\code{\link{op_ndim}()} \cr
+\code{\link{op_negative}()} \cr
+\code{\link{op_nonzero}()} \cr
+\code{\link{op_not_equal}()} \cr
+\code{\link{op_ones}()} \cr
+\code{\link{op_ones_like}()} \cr
+\code{\link{op_outer}()} \cr
+\code{\link{op_pad}()} \cr
+\code{\link{op_power}()} \cr
+\code{\link{op_prod}()} \cr
+\code{\link{op_quantile}()} \cr
+\code{\link{op_ravel}()} \cr
+\code{\link{op_real}()} \cr
+\code{\link{op_reciprocal}()} \cr
+\code{\link{op_repeat}()} \cr
+\code{\link{op_reshape}()} \cr
+\code{\link{op_roll}()} \cr
+\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
+\code{\link{op_sign}()} \cr
+\code{\link{op_sin}()} \cr
+\code{\link{op_sinh}()} \cr
+\code{\link{op_size}()} \cr
+\code{\link{op_sort}()} \cr
+\code{\link{op_split}()} \cr
+\code{\link{op_sqrt}()} \cr
+\code{\link{op_square}()} \cr
+\code{\link{op_squeeze}()} \cr
+\code{\link{op_stack}()} \cr
+\code{\link{op_std}()} \cr
+\code{\link{op_subtract}()} \cr
+\code{\link{op_sum}()} \cr
+\code{\link{op_swapaxes}()} \cr
+\code{\link{op_take}()} \cr
+\code{\link{op_take_along_axis}()} \cr
+\code{\link{op_tan}()} \cr
+\code{\link{op_tanh}()} \cr
+\code{\link{op_tensordot}()} \cr
+\code{\link{op_tile}()} \cr
+\code{\link{op_trace}()} \cr
+\code{\link{op_transpose}()} \cr
+\code{\link{op_tri}()} \cr
+\code{\link{op_tril}()} \cr
+\code{\link{op_triu}()} \cr
+\code{\link{op_var}()} \cr
+\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
+\code{\link{op_vstack}()} \cr
+\code{\link{op_where}()} \cr
+\code{\link{op_zeros}()} \cr
+\code{\link{op_zeros_like}()} \cr
+
+Other ops: \cr
+\code{\link{op_abs}()} \cr
+\code{\link{op_add}()} \cr
+\code{\link{op_all}()} \cr
+\code{\link{op_any}()} \cr
+\code{\link{op_append}()} \cr
+\code{\link{op_arange}()} \cr
+\code{\link{op_arccos}()} \cr
+\code{\link{op_arccosh}()} \cr
+\code{\link{op_arcsin}()} \cr
+\code{\link{op_arcsinh}()} \cr
+\code{\link{op_arctan}()} \cr
+\code{\link{op_arctan2}()} \cr
+\code{\link{op_arctanh}()} \cr
+\code{\link{op_argmax}()} \cr
+\code{\link{op_argmin}()} \cr
+\code{\link{op_argsort}()} \cr
+\code{\link{op_array}()} \cr
+\code{\link{op_average}()} \cr
+\code{\link{op_average_pool}()} \cr
+\code{\link{op_batch_normalization}()} \cr
+\code{\link{op_binary_crossentropy}()} \cr
+\code{\link{op_bincount}()} \cr
+\code{\link{op_broadcast_to}()} \cr
+\code{\link{op_cast}()} \cr
+\code{\link{op_categorical_crossentropy}()} \cr
+\code{\link{op_ceil}()} \cr
+\code{\link{op_cholesky}()} \cr
+\code{\link{op_clip}()} \cr
+\code{\link{op_concatenate}()} \cr
+\code{\link{op_cond}()} \cr
+\code{\link{op_conj}()} \cr
+\code{\link{op_conv}()} \cr
+\code{\link{op_conv_transpose}()} \cr
+\code{\link{op_convert_to_numpy}()} \cr
+\code{\link{op_convert_to_tensor}()} \cr
+\code{\link{op_copy}()} \cr
+\code{\link{op_correlate}()} \cr
+\code{\link{op_cos}()} \cr
+\code{\link{op_cosh}()} \cr
+\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_loss}()} \cr
+\code{\link{op_cumprod}()} \cr
+\code{\link{op_cumsum}()} \cr
+\code{\link{op_custom_gradient}()} \cr
+\code{\link{op_depthwise_conv}()} \cr
+\code{\link{op_det}()} \cr
+\code{\link{op_diag}()} \cr
+\code{\link{op_diagonal}()} \cr
+\code{\link{op_diff}()} \cr
+\code{\link{op_digitize}()} \cr
+\code{\link{op_divide}()} \cr
+\code{\link{op_divide_no_nan}()} \cr
+\code{\link{op_dot}()} \cr
+\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
+\code{\link{op_einsum}()} \cr
+\code{\link{op_elu}()} \cr
+\code{\link{op_empty}()} \cr
+\code{\link{op_equal}()} \cr
+\code{\link{op_erf}()} \cr
+\code{\link{op_erfinv}()} \cr
+\code{\link{op_exp}()} \cr
+\code{\link{op_expand_dims}()} \cr
+\code{\link{op_expm1}()} \cr
+\code{\link{op_extract_sequences}()} \cr
+\code{\link{op_eye}()} \cr
+\code{\link{op_fft}()} \cr
+\code{\link{op_fft2}()} \cr
+\code{\link{op_flip}()} \cr
+\code{\link{op_floor}()} \cr
+\code{\link{op_floor_divide}()} \cr
+\code{\link{op_fori_loop}()} \cr
+\code{\link{op_full}()} \cr
+\code{\link{op_full_like}()} \cr
+\code{\link{op_gelu}()} \cr
+\code{\link{op_get_item}()} \cr
+\code{\link{op_greater}()} \cr
+\code{\link{op_greater_equal}()} \cr
+\code{\link{op_hard_sigmoid}()} \cr
+\code{\link{op_hard_silu}()} \cr
+\code{\link{op_hstack}()} \cr
+\code{\link{op_identity}()} \cr
+\code{\link{op_imag}()} \cr
+\code{\link{op_image_affine_transform}()} \cr
+\code{\link{op_image_crop}()} \cr
+\code{\link{op_image_extract_patches}()} \cr
+\code{\link{op_image_map_coordinates}()} \cr
+\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
+\code{\link{op_in_top_k}()} \cr
+\code{\link{op_inv}()} \cr
+\code{\link{op_irfft}()} \cr
+\code{\link{op_is_tensor}()} \cr
+\code{\link{op_isclose}()} \cr
+\code{\link{op_isfinite}()} \cr
+\code{\link{op_isinf}()} \cr
+\code{\link{op_isnan}()} \cr
+\code{\link{op_istft}()} \cr
+\code{\link{op_leaky_relu}()} \cr
+\code{\link{op_less}()} \cr
+\code{\link{op_less_equal}()} \cr
+\code{\link{op_linspace}()} \cr
+\code{\link{op_log}()} \cr
+\code{\link{op_log10}()} \cr
+\code{\link{op_log1p}()} \cr
+\code{\link{op_log2}()} \cr
+\code{\link{op_log_sigmoid}()} \cr
+\code{\link{op_log_softmax}()} \cr
+\code{\link{op_logaddexp}()} \cr
+\code{\link{op_logical_and}()} \cr
+\code{\link{op_logical_not}()} \cr
+\code{\link{op_logical_or}()} \cr
+\code{\link{op_logical_xor}()} \cr
+\code{\link{op_logspace}()} \cr
+\code{\link{op_logsumexp}()} \cr
+\code{\link{op_lu_factor}()} \cr
+\code{\link{op_matmul}()} \cr
+\code{\link{op_max}()} \cr
+\code{\link{op_max_pool}()} \cr
+\code{\link{op_maximum}()} \cr
+\code{\link{op_mean}()} \cr
+\code{\link{op_median}()} \cr
+\code{\link{op_meshgrid}()} \cr
+\code{\link{op_min}()} \cr
+\code{\link{op_minimum}()} \cr
+\code{\link{op_mod}()} \cr
+\code{\link{op_moments}()} \cr
+\code{\link{op_moveaxis}()} \cr
+\code{\link{op_multi_hot}()} \cr
+\code{\link{op_multiply}()} \cr
+\code{\link{op_nan_to_num}()} \cr
+\code{\link{op_ndim}()} \cr
+\code{\link{op_negative}()} \cr
+\code{\link{op_nonzero}()} \cr
+\code{\link{op_norm}()} \cr
+\code{\link{op_normalize}()} \cr
+\code{\link{op_not_equal}()} \cr
+\code{\link{op_one_hot}()} \cr
+\code{\link{op_ones}()} \cr
+\code{\link{op_ones_like}()} \cr
+\code{\link{op_outer}()} \cr
+\code{\link{op_pad}()} \cr
+\code{\link{op_power}()} \cr
+\code{\link{op_prod}()} \cr
+\code{\link{op_qr}()} \cr
+\code{\link{op_quantile}()} \cr
+\code{\link{op_ravel}()} \cr
+\code{\link{op_real}()} \cr
+\code{\link{op_reciprocal}()} \cr
+\code{\link{op_relu}()} \cr
+\code{\link{op_relu6}()} \cr
+\code{\link{op_repeat}()} \cr
+\code{\link{op_reshape}()} \cr
+\code{\link{op_rfft}()} \cr
+\code{\link{op_roll}()} \cr
+\code{\link{op_round}()} \cr
+\code{\link{op_rsqrt}()} \cr
+\code{\link{op_scatter}()} \cr
+\code{\link{op_scatter_update}()} \cr
+\code{\link{op_segment_max}()} \cr
+\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
+\code{\link{op_selu}()} \cr
+\code{\link{op_separable_conv}()} \cr
+\code{\link{op_shape}()} \cr
+\code{\link{op_sigmoid}()} \cr
+\code{\link{op_sign}()} \cr
+\code{\link{op_silu}()} \cr
+\code{\link{op_sin}()} \cr
+\code{\link{op_sinh}()} \cr
+\code{\link{op_size}()} \cr
+\code{\link{op_slice}()} \cr
+\code{\link{op_slice_update}()} \cr
+\code{\link{op_softmax}()} \cr
+\code{\link{op_softplus}()} \cr
+\code{\link{op_softsign}()} \cr
+\code{\link{op_solve}()} \cr
+\code{\link{op_solve_triangular}()} \cr
+\code{\link{op_sort}()} \cr
+\code{\link{op_sparse_categorical_crossentropy}()} \cr
+\code{\link{op_split}()} \cr
+\code{\link{op_sqrt}()} \cr
+\code{\link{op_square}()} \cr
+\code{\link{op_squeeze}()} \cr
+\code{\link{op_stack}()} \cr
+\code{\link{op_std}()} \cr
+\code{\link{op_stft}()} \cr
+\code{\link{op_stop_gradient}()} \cr
+\code{\link{op_subtract}()} \cr
+\code{\link{op_sum}()} \cr
+\code{\link{op_svd}()} \cr
+\code{\link{op_swapaxes}()} \cr
+\code{\link{op_take}()} \cr
+\code{\link{op_take_along_axis}()} \cr
+\code{\link{op_tan}()} \cr
+\code{\link{op_tanh}()} \cr
+\code{\link{op_tensordot}()} \cr
+\code{\link{op_tile}()} \cr
+\code{\link{op_top_k}()} \cr
+\code{\link{op_trace}()} \cr
+\code{\link{op_transpose}()} \cr
+\code{\link{op_tri}()} \cr
+\code{\link{op_tril}()} \cr
+\code{\link{op_triu}()} \cr
+\code{\link{op_unstack}()} \cr
+\code{\link{op_var}()} \cr
+\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
+\code{\link{op_vectorized_map}()} \cr
+\code{\link{op_vstack}()} \cr
+\code{\link{op_where}()} \cr
+\code{\link{op_while_loop}()} \cr
+\code{\link{op_zeros}()} \cr
+\code{\link{op_zeros_like}()} \cr
+}
+\concept{numpy ops}
+\concept{ops}
diff --git a/man/op_ctc_loss.Rd b/man/op_ctc_loss.Rd
index fbe26ddb9..2a13d9f18 100644
--- a/man/op_ctc_loss.Rd
+++ b/man/op_ctc_loss.Rd
@@ -102,6 +102,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_custom_gradient}()} \cr
@@ -115,6 +116,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -149,6 +151,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -266,6 +270,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_cumprod.Rd b/man/op_cumprod.Rd
index 61b5dd89d..1828b56ab 100644
--- a/man/op_cumprod.Rd
+++ b/man/op_cumprod.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
\code{\link{op_diagonal}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_custom_gradient}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_cumsum.Rd b/man/op_cumsum.Rd
index 6367aac25..f6d5a0ac6 100644
--- a/man/op_cumsum.Rd
+++ b/man/op_cumsum.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_diag}()} \cr
\code{\link{op_diagonal}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_custom_gradient}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_custom_gradient.Rd b/man/op_custom_gradient.Rd
index 2181b0b00..707ed7067 100644
--- a/man/op_custom_gradient.Rd
+++ b/man/op_custom_gradient.Rd
@@ -138,6 +138,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -151,6 +152,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -185,6 +187,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -257,6 +260,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -302,6 +306,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_depthwise_conv.Rd b/man/op_depthwise_conv.Rd
index 7c09ec77a..bb57ba1fc 100644
--- a/man/op_depthwise_conv.Rd
+++ b/man/op_depthwise_conv.Rd
@@ -131,6 +131,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -144,6 +145,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -178,6 +180,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -250,6 +253,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -295,6 +299,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_det.Rd b/man/op_det.Rd
index b4d485d74..eb60a0edc 100644
--- a/man/op_det.Rd
+++ b/man/op_det.Rd
@@ -19,6 +19,7 @@ Computes the determinant of a square tensor.
Other linear algebra ops: \cr
\code{\link{op_cholesky}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_lu_factor}()} \cr
\code{\link{op_norm}()} \cr
@@ -67,6 +68,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -80,6 +82,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -114,6 +117,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -186,6 +190,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -231,6 +236,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_diag.Rd b/man/op_diag.Rd
index 1f2ebade6..6522ddf90 100644
--- a/man/op_diag.Rd
+++ b/man/op_diag.Rd
@@ -100,6 +100,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diagonal}()} \cr
@@ -173,6 +174,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -200,6 +202,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -247,6 +250,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -260,6 +264,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -294,6 +299,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -366,6 +372,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -411,6 +418,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_diagonal.Rd b/man/op_diagonal.Rd
index fff2c68d0..9b2e22580 100644
--- a/man/op_diagonal.Rd
+++ b/man/op_diagonal.Rd
@@ -135,6 +135,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -208,6 +209,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -235,6 +237,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -282,6 +285,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -295,6 +299,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -329,6 +334,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -401,6 +407,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -446,6 +453,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_diff.Rd b/man/op_diff.Rd
index fd107364c..fe98012f6 100644
--- a/man/op_diff.Rd
+++ b/man/op_diff.Rd
@@ -89,6 +89,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -162,6 +163,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -189,6 +191,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -236,6 +239,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -249,6 +253,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -283,6 +288,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -355,6 +361,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -400,6 +407,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_digitize.Rd b/man/op_digitize.Rd
index 2235fdad5..d86012923 100644
--- a/man/op_digitize.Rd
+++ b/man/op_digitize.Rd
@@ -68,6 +68,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -141,6 +142,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -168,6 +170,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -215,6 +218,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -228,6 +232,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -262,6 +267,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -334,6 +340,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -379,6 +386,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_divide.Rd b/man/op_divide.Rd
index 0af8235d7..6c3e3b171 100644
--- a/man/op_divide.Rd
+++ b/man/op_divide.Rd
@@ -83,6 +83,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -156,6 +157,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -183,6 +185,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -230,6 +233,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -243,6 +247,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -277,6 +282,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -349,6 +355,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -394,6 +401,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_divide_no_nan.Rd b/man/op_divide_no_nan.Rd
index 4f1d747f7..eacf3df5c 100644
--- a/man/op_divide_no_nan.Rd
+++ b/man/op_divide_no_nan.Rd
@@ -49,6 +49,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -122,6 +123,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -149,6 +151,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -196,6 +199,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -209,6 +213,7 @@ Other ops: \cr
\code{\link{op_divide}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -243,6 +248,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -315,6 +321,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -360,6 +367,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_dot.Rd b/man/op_dot.Rd
index 3c89a53e3..b1b6554dd 100644
--- a/man/op_dot.Rd
+++ b/man/op_dot.Rd
@@ -67,6 +67,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -140,6 +141,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -167,6 +169,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -214,6 +217,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -227,6 +231,7 @@ Other ops: \cr
\code{\link{op_divide}()} \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -261,6 +266,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -333,6 +339,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -378,6 +385,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_eig.Rd b/man/op_eig.Rd
index d3a9f77d6..c24e6ec8c 100644
--- a/man/op_eig.Rd
+++ b/man/op_eig.Rd
@@ -20,6 +20,7 @@ Computes the eigenvalues and eigenvectors of a square matrix.
Other linear algebra ops: \cr
\code{\link{op_cholesky}()} \cr
\code{\link{op_det}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_lu_factor}()} \cr
\code{\link{op_norm}()} \cr
@@ -68,6 +69,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -81,6 +83,7 @@ Other ops: \cr
\code{\link{op_divide}()} \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -115,6 +118,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -187,6 +191,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -232,6 +237,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_eigh.Rd b/man/op_eigh.Rd
new file mode 100644
index 000000000..ed171a506
--- /dev/null
+++ b/man/op_eigh.Rd
@@ -0,0 +1,249 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/ops-linalg.R
+\name{op_eigh}
+\alias{op_eigh}
+\title{Computes the eigenvalues and eigenvectors of a complex Hermitian.}
+\usage{
+op_eigh(x)
+}
+\arguments{
+\item{x}{Input tensor of shape \verb{(..., M, M)}.}
+}
+\value{
+A list of two tensors: a tensor of shape \verb{(..., M)} containing
+eigenvalues and a tensor of shape \verb{(..., M, M)} containing eigenvectors.
+}
+\description{
+Computes the eigenvalues and eigenvectors of a complex Hermitian.
+}
+\seealso{
+Other linear algebra ops: \cr
+\code{\link{op_cholesky}()} \cr
+\code{\link{op_det}()} \cr
+\code{\link{op_eig}()} \cr
+\code{\link{op_inv}()} \cr
+\code{\link{op_lu_factor}()} \cr
+\code{\link{op_norm}()} \cr
+\code{\link{op_solve_triangular}()} \cr
+\code{\link{op_svd}()} \cr
+
+Other ops: \cr
+\code{\link{op_abs}()} \cr
+\code{\link{op_add}()} \cr
+\code{\link{op_all}()} \cr
+\code{\link{op_any}()} \cr
+\code{\link{op_append}()} \cr
+\code{\link{op_arange}()} \cr
+\code{\link{op_arccos}()} \cr
+\code{\link{op_arccosh}()} \cr
+\code{\link{op_arcsin}()} \cr
+\code{\link{op_arcsinh}()} \cr
+\code{\link{op_arctan}()} \cr
+\code{\link{op_arctan2}()} \cr
+\code{\link{op_arctanh}()} \cr
+\code{\link{op_argmax}()} \cr
+\code{\link{op_argmin}()} \cr
+\code{\link{op_argsort}()} \cr
+\code{\link{op_array}()} \cr
+\code{\link{op_average}()} \cr
+\code{\link{op_average_pool}()} \cr
+\code{\link{op_batch_normalization}()} \cr
+\code{\link{op_binary_crossentropy}()} \cr
+\code{\link{op_bincount}()} \cr
+\code{\link{op_broadcast_to}()} \cr
+\code{\link{op_cast}()} \cr
+\code{\link{op_categorical_crossentropy}()} \cr
+\code{\link{op_ceil}()} \cr
+\code{\link{op_cholesky}()} \cr
+\code{\link{op_clip}()} \cr
+\code{\link{op_concatenate}()} \cr
+\code{\link{op_cond}()} \cr
+\code{\link{op_conj}()} \cr
+\code{\link{op_conv}()} \cr
+\code{\link{op_conv_transpose}()} \cr
+\code{\link{op_convert_to_numpy}()} \cr
+\code{\link{op_convert_to_tensor}()} \cr
+\code{\link{op_copy}()} \cr
+\code{\link{op_correlate}()} \cr
+\code{\link{op_cos}()} \cr
+\code{\link{op_cosh}()} \cr
+\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
+\code{\link{op_ctc_loss}()} \cr
+\code{\link{op_cumprod}()} \cr
+\code{\link{op_cumsum}()} \cr
+\code{\link{op_custom_gradient}()} \cr
+\code{\link{op_depthwise_conv}()} \cr
+\code{\link{op_det}()} \cr
+\code{\link{op_diag}()} \cr
+\code{\link{op_diagonal}()} \cr
+\code{\link{op_diff}()} \cr
+\code{\link{op_digitize}()} \cr
+\code{\link{op_divide}()} \cr
+\code{\link{op_divide_no_nan}()} \cr
+\code{\link{op_dot}()} \cr
+\code{\link{op_eig}()} \cr
+\code{\link{op_einsum}()} \cr
+\code{\link{op_elu}()} \cr
+\code{\link{op_empty}()} \cr
+\code{\link{op_equal}()} \cr
+\code{\link{op_erf}()} \cr
+\code{\link{op_erfinv}()} \cr
+\code{\link{op_exp}()} \cr
+\code{\link{op_expand_dims}()} \cr
+\code{\link{op_expm1}()} \cr
+\code{\link{op_extract_sequences}()} \cr
+\code{\link{op_eye}()} \cr
+\code{\link{op_fft}()} \cr
+\code{\link{op_fft2}()} \cr
+\code{\link{op_flip}()} \cr
+\code{\link{op_floor}()} \cr
+\code{\link{op_floor_divide}()} \cr
+\code{\link{op_fori_loop}()} \cr
+\code{\link{op_full}()} \cr
+\code{\link{op_full_like}()} \cr
+\code{\link{op_gelu}()} \cr
+\code{\link{op_get_item}()} \cr
+\code{\link{op_greater}()} \cr
+\code{\link{op_greater_equal}()} \cr
+\code{\link{op_hard_sigmoid}()} \cr
+\code{\link{op_hard_silu}()} \cr
+\code{\link{op_hstack}()} \cr
+\code{\link{op_identity}()} \cr
+\code{\link{op_imag}()} \cr
+\code{\link{op_image_affine_transform}()} \cr
+\code{\link{op_image_crop}()} \cr
+\code{\link{op_image_extract_patches}()} \cr
+\code{\link{op_image_map_coordinates}()} \cr
+\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
+\code{\link{op_in_top_k}()} \cr
+\code{\link{op_inv}()} \cr
+\code{\link{op_irfft}()} \cr
+\code{\link{op_is_tensor}()} \cr
+\code{\link{op_isclose}()} \cr
+\code{\link{op_isfinite}()} \cr
+\code{\link{op_isinf}()} \cr
+\code{\link{op_isnan}()} \cr
+\code{\link{op_istft}()} \cr
+\code{\link{op_leaky_relu}()} \cr
+\code{\link{op_less}()} \cr
+\code{\link{op_less_equal}()} \cr
+\code{\link{op_linspace}()} \cr
+\code{\link{op_log}()} \cr
+\code{\link{op_log10}()} \cr
+\code{\link{op_log1p}()} \cr
+\code{\link{op_log2}()} \cr
+\code{\link{op_log_sigmoid}()} \cr
+\code{\link{op_log_softmax}()} \cr
+\code{\link{op_logaddexp}()} \cr
+\code{\link{op_logical_and}()} \cr
+\code{\link{op_logical_not}()} \cr
+\code{\link{op_logical_or}()} \cr
+\code{\link{op_logical_xor}()} \cr
+\code{\link{op_logspace}()} \cr
+\code{\link{op_logsumexp}()} \cr
+\code{\link{op_lu_factor}()} \cr
+\code{\link{op_matmul}()} \cr
+\code{\link{op_max}()} \cr
+\code{\link{op_max_pool}()} \cr
+\code{\link{op_maximum}()} \cr
+\code{\link{op_mean}()} \cr
+\code{\link{op_median}()} \cr
+\code{\link{op_meshgrid}()} \cr
+\code{\link{op_min}()} \cr
+\code{\link{op_minimum}()} \cr
+\code{\link{op_mod}()} \cr
+\code{\link{op_moments}()} \cr
+\code{\link{op_moveaxis}()} \cr
+\code{\link{op_multi_hot}()} \cr
+\code{\link{op_multiply}()} \cr
+\code{\link{op_nan_to_num}()} \cr
+\code{\link{op_ndim}()} \cr
+\code{\link{op_negative}()} \cr
+\code{\link{op_nonzero}()} \cr
+\code{\link{op_norm}()} \cr
+\code{\link{op_normalize}()} \cr
+\code{\link{op_not_equal}()} \cr
+\code{\link{op_one_hot}()} \cr
+\code{\link{op_ones}()} \cr
+\code{\link{op_ones_like}()} \cr
+\code{\link{op_outer}()} \cr
+\code{\link{op_pad}()} \cr
+\code{\link{op_power}()} \cr
+\code{\link{op_prod}()} \cr
+\code{\link{op_qr}()} \cr
+\code{\link{op_quantile}()} \cr
+\code{\link{op_ravel}()} \cr
+\code{\link{op_real}()} \cr
+\code{\link{op_reciprocal}()} \cr
+\code{\link{op_relu}()} \cr
+\code{\link{op_relu6}()} \cr
+\code{\link{op_repeat}()} \cr
+\code{\link{op_reshape}()} \cr
+\code{\link{op_rfft}()} \cr
+\code{\link{op_roll}()} \cr
+\code{\link{op_round}()} \cr
+\code{\link{op_rsqrt}()} \cr
+\code{\link{op_scatter}()} \cr
+\code{\link{op_scatter_update}()} \cr
+\code{\link{op_segment_max}()} \cr
+\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
+\code{\link{op_selu}()} \cr
+\code{\link{op_separable_conv}()} \cr
+\code{\link{op_shape}()} \cr
+\code{\link{op_sigmoid}()} \cr
+\code{\link{op_sign}()} \cr
+\code{\link{op_silu}()} \cr
+\code{\link{op_sin}()} \cr
+\code{\link{op_sinh}()} \cr
+\code{\link{op_size}()} \cr
+\code{\link{op_slice}()} \cr
+\code{\link{op_slice_update}()} \cr
+\code{\link{op_softmax}()} \cr
+\code{\link{op_softplus}()} \cr
+\code{\link{op_softsign}()} \cr
+\code{\link{op_solve}()} \cr
+\code{\link{op_solve_triangular}()} \cr
+\code{\link{op_sort}()} \cr
+\code{\link{op_sparse_categorical_crossentropy}()} \cr
+\code{\link{op_split}()} \cr
+\code{\link{op_sqrt}()} \cr
+\code{\link{op_square}()} \cr
+\code{\link{op_squeeze}()} \cr
+\code{\link{op_stack}()} \cr
+\code{\link{op_std}()} \cr
+\code{\link{op_stft}()} \cr
+\code{\link{op_stop_gradient}()} \cr
+\code{\link{op_subtract}()} \cr
+\code{\link{op_sum}()} \cr
+\code{\link{op_svd}()} \cr
+\code{\link{op_swapaxes}()} \cr
+\code{\link{op_take}()} \cr
+\code{\link{op_take_along_axis}()} \cr
+\code{\link{op_tan}()} \cr
+\code{\link{op_tanh}()} \cr
+\code{\link{op_tensordot}()} \cr
+\code{\link{op_tile}()} \cr
+\code{\link{op_top_k}()} \cr
+\code{\link{op_trace}()} \cr
+\code{\link{op_transpose}()} \cr
+\code{\link{op_tri}()} \cr
+\code{\link{op_tril}()} \cr
+\code{\link{op_triu}()} \cr
+\code{\link{op_unstack}()} \cr
+\code{\link{op_var}()} \cr
+\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
+\code{\link{op_vectorized_map}()} \cr
+\code{\link{op_vstack}()} \cr
+\code{\link{op_where}()} \cr
+\code{\link{op_while_loop}()} \cr
+\code{\link{op_zeros}()} \cr
+\code{\link{op_zeros_like}()} \cr
+}
+\concept{linear algebra ops}
+\concept{ops}
diff --git a/man/op_einsum.Rd b/man/op_einsum.Rd
index 4334793e3..ecefaea21 100644
--- a/man/op_einsum.Rd
+++ b/man/op_einsum.Rd
@@ -150,6 +150,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -223,6 +224,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -250,6 +252,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -297,6 +300,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -311,6 +315,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
\code{\link{op_equal}()} \cr
@@ -344,6 +349,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -416,6 +422,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -461,6 +468,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_elu.Rd b/man/op_elu.Rd
index 5a41c375a..5ce5d0a75 100644
--- a/man/op_elu.Rd
+++ b/man/op_elu.Rd
@@ -107,6 +107,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -121,6 +122,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_empty}()} \cr
\code{\link{op_equal}()} \cr
@@ -154,6 +156,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -226,6 +229,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -271,6 +275,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_empty.Rd b/man/op_empty.Rd
index 00d037e6e..c577ec7a6 100644
--- a/man/op_empty.Rd
+++ b/man/op_empty.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -126,6 +127,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -153,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_equal}()} \cr
@@ -247,6 +252,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -319,6 +325,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -364,6 +371,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_equal.Rd b/man/op_equal.Rd
index ff3241af8..8877c605d 100644
--- a/man/op_equal.Rd
+++ b/man/op_equal.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -268,6 +273,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_erf.Rd b/man/op_erf.Rd
index 3fb038973..95e1e9ad2 100644
--- a/man/op_erf.Rd
+++ b/man/op_erf.Rd
@@ -89,6 +89,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -103,6 +104,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -136,6 +138,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -208,6 +211,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -253,6 +257,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_erfinv.Rd b/man/op_erfinv.Rd
index e90985939..70472e331 100644
--- a/man/op_erfinv.Rd
+++ b/man/op_erfinv.Rd
@@ -86,6 +86,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -100,6 +101,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -133,6 +135,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -205,6 +208,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -250,6 +254,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_exp.Rd b/man/op_exp.Rd
index e336b0ccd..9bcc3182c 100644
--- a/man/op_exp.Rd
+++ b/man/op_exp.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -245,6 +250,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_expand_dims.Rd b/man/op_expand_dims.Rd
index c54187638..418cf2ee4 100644
--- a/man/op_expand_dims.Rd
+++ b/man/op_expand_dims.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -127,6 +128,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -320,6 +326,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_expm1.Rd b/man/op_expm1.Rd
index b985a3d9e..3b6582552 100644
--- a/man/op_expm1.Rd
+++ b/man/op_expm1.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -245,6 +250,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_extract_sequences.Rd b/man/op_extract_sequences.Rd
index d99abaaa9..3496ce5ce 100644
--- a/man/op_extract_sequences.Rd
+++ b/man/op_extract_sequences.Rd
@@ -103,6 +103,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -117,6 +118,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -150,6 +152,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -222,6 +225,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -267,6 +271,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_eye.Rd b/man/op_eye.Rd
index 3343b2dfb..711365db4 100644
--- a/man/op_eye.Rd
+++ b/man/op_eye.Rd
@@ -59,6 +59,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -132,6 +133,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -159,6 +161,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -206,6 +209,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -220,6 +224,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -253,6 +258,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -325,6 +331,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -370,6 +377,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_fft.Rd b/man/op_fft.Rd
index 57249d232..c6c4038b7 100644
--- a/man/op_fft.Rd
+++ b/man/op_fft.Rd
@@ -97,6 +97,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -111,6 +112,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -144,6 +146,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -216,6 +219,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -261,6 +265,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_fft2.Rd b/man/op_fft2.Rd
index d763b2254..2887a681c 100644
--- a/man/op_fft2.Rd
+++ b/man/op_fft2.Rd
@@ -103,6 +103,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -117,6 +118,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -150,6 +152,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -222,6 +225,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -267,6 +271,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_flip.Rd b/man/op_flip.Rd
index ad01c735b..184025a37 100644
--- a/man/op_flip.Rd
+++ b/man/op_flip.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -127,6 +128,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -320,6 +326,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_floor.Rd b/man/op_floor.Rd
index a91ae117a..5195a77ff 100644
--- a/man/op_floor.Rd
+++ b/man/op_floor.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -245,6 +250,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_floor_divide.Rd b/man/op_floor_divide.Rd
index 5536e5c2d..fedbe94cd 100644
--- a/man/op_floor_divide.Rd
+++ b/man/op_floor_divide.Rd
@@ -70,6 +70,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -143,6 +144,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -170,6 +172,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -217,6 +220,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -231,6 +235,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -264,6 +269,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -336,6 +342,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -381,6 +388,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_fori_loop.Rd b/man/op_fori_loop.Rd
index e81bf2af2..f225b4e89 100644
--- a/man/op_fori_loop.Rd
+++ b/man/op_fori_loop.Rd
@@ -97,6 +97,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -111,6 +112,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -144,6 +146,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -216,6 +219,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -261,6 +265,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_full.Rd b/man/op_full.Rd
index 3f2eca340..06fb4b189 100644
--- a/man/op_full.Rd
+++ b/man/op_full.Rd
@@ -55,6 +55,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -128,6 +129,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -155,6 +157,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -202,6 +205,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -249,6 +254,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -321,6 +327,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -366,6 +373,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_full_like.Rd b/man/op_full_like.Rd
index 9e7a9c0c0..79b932021 100644
--- a/man/op_full_like.Rd
+++ b/man/op_full_like.Rd
@@ -55,6 +55,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -128,6 +129,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -155,6 +157,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -202,6 +205,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -249,6 +254,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -321,6 +327,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -366,6 +373,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_gelu.Rd b/man/op_gelu.Rd
index d9b328b17..8aa1f5eed 100644
--- a/man/op_gelu.Rd
+++ b/man/op_gelu.Rd
@@ -125,6 +125,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -139,6 +140,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -172,6 +174,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -244,6 +247,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -289,6 +293,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_get_item.Rd b/man/op_get_item.Rd
index 517bdf930..dd98a1785 100644
--- a/man/op_get_item.Rd
+++ b/man/op_get_item.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_greater.Rd b/man/op_greater.Rd
index b3d4080f4..840949970 100644
--- a/man/op_greater.Rd
+++ b/man/op_greater.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -268,6 +273,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_greater_equal.Rd b/man/op_greater_equal.Rd
index 19f9959a2..1d7a42922 100644
--- a/man/op_greater_equal.Rd
+++ b/man/op_greater_equal.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -268,6 +273,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_hard_sigmoid.Rd b/man/op_hard_sigmoid.Rd
index 16a3cefde..7e123b787 100644
--- a/man/op_hard_sigmoid.Rd
+++ b/man/op_hard_sigmoid.Rd
@@ -112,6 +112,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -126,6 +127,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -159,6 +161,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -231,6 +234,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -276,6 +280,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_hard_silu.Rd b/man/op_hard_silu.Rd
index 9a00d60a3..a40d957d3 100644
--- a/man/op_hard_silu.Rd
+++ b/man/op_hard_silu.Rd
@@ -109,6 +109,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -123,6 +124,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -156,6 +158,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -228,6 +231,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -273,6 +277,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_hstack.Rd b/man/op_hstack.Rd
index 8ee7cac04..7a2ed66b7 100644
--- a/man/op_hstack.Rd
+++ b/man/op_hstack.Rd
@@ -52,6 +52,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -152,6 +154,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -199,6 +202,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -213,6 +217,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -363,6 +370,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_identity.Rd b/man/op_identity.Rd
index 8bde61cd6..414880372 100644
--- a/man/op_identity.Rd
+++ b/man/op_identity.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -127,6 +128,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -320,6 +326,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_imag.Rd b/man/op_imag.Rd
index 89516f987..ec5f729a9 100644
--- a/man/op_imag.Rd
+++ b/man/op_imag.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -245,6 +250,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_image_affine_transform.Rd b/man/op_image_affine_transform.Rd
index 0f10eebbe..d8ae681ed 100644
--- a/man/op_image_affine_transform.Rd
+++ b/man/op_image_affine_transform.Rd
@@ -121,6 +121,7 @@ Other image ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other image utils: \cr
\code{\link{image_array_save}()} \cr
@@ -133,6 +134,7 @@ Other image utils: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other ops: \cr
\code{\link{op_abs}()} \cr
@@ -176,6 +178,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -190,6 +193,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -223,6 +227,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -295,6 +300,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_image_crop.Rd b/man/op_image_crop.Rd
index 25427d02a..869c66069 100644
--- a/man/op_image_crop.Rd
+++ b/man/op_image_crop.Rd
@@ -59,6 +59,7 @@ Other image ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other image utils: \cr
\code{\link{image_array_save}()} \cr
@@ -71,6 +72,7 @@ Other image utils: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other ops: \cr
\code{\link{op_abs}()} \cr
@@ -114,6 +116,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -128,6 +131,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -161,6 +165,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -233,6 +238,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -278,6 +284,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_image_extract_patches.Rd b/man/op_image_extract_patches.Rd
index 9840cf4e4..cf5966039 100644
--- a/man/op_image_extract_patches.Rd
+++ b/man/op_image_extract_patches.Rd
@@ -78,6 +78,7 @@ Other image ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other image utils: \cr
\code{\link{image_array_save}()} \cr
@@ -90,6 +91,7 @@ Other image utils: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other ops: \cr
\code{\link{op_abs}()} \cr
@@ -133,6 +135,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -147,6 +150,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -180,6 +184,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -252,6 +257,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -297,6 +303,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_image_map_coordinates.Rd b/man/op_image_map_coordinates.Rd
index 2bc1ce280..a528a4c3e 100644
--- a/man/op_image_map_coordinates.Rd
+++ b/man/op_image_map_coordinates.Rd
@@ -59,6 +59,7 @@ Other image ops: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other image utils: \cr
\code{\link{image_array_save}()} \cr
@@ -71,6 +72,7 @@ Other image utils: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other ops: \cr
\code{\link{op_abs}()} \cr
@@ -114,6 +116,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -128,6 +131,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -161,6 +165,7 @@ Other ops: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -233,6 +238,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -278,6 +284,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_image_pad.Rd b/man/op_image_pad.Rd
index 0ecc6b09d..0ae0bf368 100644
--- a/man/op_image_pad.Rd
+++ b/man/op_image_pad.Rd
@@ -72,6 +72,7 @@ Other image ops: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other image utils: \cr
\code{\link{image_array_save}()} \cr
@@ -84,6 +85,7 @@ Other image utils: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other ops: \cr
\code{\link{op_abs}()} \cr
@@ -127,6 +129,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -141,6 +144,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -174,6 +178,7 @@ Other ops: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -291,6 +297,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_image_resize.Rd b/man/op_image_resize.Rd
index c5887ac5d..b289e9432 100644
--- a/man/op_image_resize.Rd
+++ b/man/op_image_resize.Rd
@@ -9,6 +9,10 @@ op_image_resize(
size,
interpolation = "bilinear",
antialias = FALSE,
+ crop_to_aspect_ratio = FALSE,
+ pad_to_aspect_ratio = FALSE,
+ fill_mode = "constant",
+ fill_value = 0,
data_format = "channels_last"
)
}
@@ -23,6 +27,26 @@ op_image_resize(
\item{antialias}{Whether to use an antialiasing filter when downsampling an
image. Defaults to \code{FALSE}.}
+\item{crop_to_aspect_ratio}{If \code{TRUE}, resize the images without aspect
+ratio distortion. When the original aspect ratio differs
+from the target aspect ratio, the output image will be
+cropped so as to return the
+largest possible window in the image (of size \verb{(height, width)})
+that matches the target aspect ratio. By default
+(\code{crop_to_aspect_ratio=FALSE}), aspect ratio may not be preserved.}
+
+\item{pad_to_aspect_ratio}{If \code{TRUE}, pad the images without aspect
+ratio distortion. When the original aspect ratio differs
+from the target aspect ratio, the output image will be
+evenly padded on the short side.}
+
+\item{fill_mode}{When using \code{pad_to_aspect_ratio=TRUE}, padded areas
+are filled according to the given mode. Only \code{"constant"} is
+supported at this time
+(fill with constant value, equal to \code{fill_value}).}
+
+\item{fill_value}{Float. Padding value to use when \code{pad_to_aspect_ratio=TRUE}.}
+
\item{data_format}{string, either \code{"channels_last"} or \code{"channels_first"}.
The ordering of the dimensions in the inputs. \code{"channels_last"}
corresponds to inputs with shape \verb{(batch, height, width, channels)}
@@ -78,6 +102,7 @@ Other image ops: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other image utils: \cr
\code{\link{image_array_save}()} \cr
@@ -90,6 +115,7 @@ Other image utils: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
Other ops: \cr
\code{\link{op_abs}()} \cr
@@ -133,6 +159,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -147,6 +174,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -180,6 +208,7 @@ Other ops: \cr
\code{\link{op_image_extract_patches}()} \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -252,6 +281,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -297,6 +327,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_image_rgb_to_grayscale.Rd b/man/op_image_rgb_to_grayscale.Rd
new file mode 100644
index 000000000..2ce07ac08
--- /dev/null
+++ b/man/op_image_rgb_to_grayscale.Rd
@@ -0,0 +1,299 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/ops-image.R
+\name{op_image_rgb_to_grayscale}
+\alias{op_image_rgb_to_grayscale}
+\title{Convert RGB images to grayscale.}
+\usage{
+op_image_rgb_to_grayscale(image, data_format = "channels_last")
+}
+\arguments{
+\item{image}{Input RGB image or batch of RGB images. Must be a 3D tensor
+with shape \verb{(height, width, channels)} or a 4D tensor with shape
+\verb{(batch, height, width, channels)}.}
+
+\item{data_format}{A string specifying the data format of the input tensor.
+It can be either \code{"channels_last"} or \code{"channels_first"}.
+\code{"channels_last"} corresponds to inputs with shape
+\verb{(batch, height, width, channels)}, while \code{"channels_first"}
+corresponds to inputs with shape \verb{(batch, channels, height, width)}.
+Defaults to \code{"channels_last"}.}
+}
+\value{
+Grayscale image or batch of grayscale images.
+}
+\description{
+This function converts RGB images to grayscale images. It supports both
+3D and 4D tensors, where the last dimension represents channels.
+}
+\section{Examples}{
+\if{html}{\out{
}}\preformatted{x <- random_uniform(c(2, 4, 4, 3))
+y <- op_image_rgb_to_grayscale(x)
+shape(y)
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{## shape(2, 4, 4, 1)
+
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{x <- random_uniform(c(4, 4, 3)) # Single RGB image
+y = op_image_rgb_to_grayscale(x)
+shape(y)
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{## shape(4, 4, 1)
+
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{x <- random_uniform(c(2, 3, 4, 4))
+y <- op_image_rgb_to_grayscale(x, data_format="channels_first")
+shape(y)
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{## shape(2, 1, 4, 4)
+
+}\if{html}{\out{
}}
+}
+
+\seealso{
+Other image ops: \cr
+\code{\link{op_image_affine_transform}()} \cr
+\code{\link{op_image_crop}()} \cr
+\code{\link{op_image_extract_patches}()} \cr
+\code{\link{op_image_map_coordinates}()} \cr
+\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_resize}()} \cr
+
+Other image utils: \cr
+\code{\link{image_array_save}()} \cr
+\code{\link{image_from_array}()} \cr
+\code{\link{image_load}()} \cr
+\code{\link{image_smart_resize}()} \cr
+\code{\link{image_to_array}()} \cr
+\code{\link{op_image_affine_transform}()} \cr
+\code{\link{op_image_crop}()} \cr
+\code{\link{op_image_extract_patches}()} \cr
+\code{\link{op_image_map_coordinates}()} \cr
+\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_resize}()} \cr
+
+Other ops: \cr
+\code{\link{op_abs}()} \cr
+\code{\link{op_add}()} \cr
+\code{\link{op_all}()} \cr
+\code{\link{op_any}()} \cr
+\code{\link{op_append}()} \cr
+\code{\link{op_arange}()} \cr
+\code{\link{op_arccos}()} \cr
+\code{\link{op_arccosh}()} \cr
+\code{\link{op_arcsin}()} \cr
+\code{\link{op_arcsinh}()} \cr
+\code{\link{op_arctan}()} \cr
+\code{\link{op_arctan2}()} \cr
+\code{\link{op_arctanh}()} \cr
+\code{\link{op_argmax}()} \cr
+\code{\link{op_argmin}()} \cr
+\code{\link{op_argsort}()} \cr
+\code{\link{op_array}()} \cr
+\code{\link{op_average}()} \cr
+\code{\link{op_average_pool}()} \cr
+\code{\link{op_batch_normalization}()} \cr
+\code{\link{op_binary_crossentropy}()} \cr
+\code{\link{op_bincount}()} \cr
+\code{\link{op_broadcast_to}()} \cr
+\code{\link{op_cast}()} \cr
+\code{\link{op_categorical_crossentropy}()} \cr
+\code{\link{op_ceil}()} \cr
+\code{\link{op_cholesky}()} \cr
+\code{\link{op_clip}()} \cr
+\code{\link{op_concatenate}()} \cr
+\code{\link{op_cond}()} \cr
+\code{\link{op_conj}()} \cr
+\code{\link{op_conv}()} \cr
+\code{\link{op_conv_transpose}()} \cr
+\code{\link{op_convert_to_numpy}()} \cr
+\code{\link{op_convert_to_tensor}()} \cr
+\code{\link{op_copy}()} \cr
+\code{\link{op_correlate}()} \cr
+\code{\link{op_cos}()} \cr
+\code{\link{op_cosh}()} \cr
+\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
+\code{\link{op_ctc_loss}()} \cr
+\code{\link{op_cumprod}()} \cr
+\code{\link{op_cumsum}()} \cr
+\code{\link{op_custom_gradient}()} \cr
+\code{\link{op_depthwise_conv}()} \cr
+\code{\link{op_det}()} \cr
+\code{\link{op_diag}()} \cr
+\code{\link{op_diagonal}()} \cr
+\code{\link{op_diff}()} \cr
+\code{\link{op_digitize}()} \cr
+\code{\link{op_divide}()} \cr
+\code{\link{op_divide_no_nan}()} \cr
+\code{\link{op_dot}()} \cr
+\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
+\code{\link{op_einsum}()} \cr
+\code{\link{op_elu}()} \cr
+\code{\link{op_empty}()} \cr
+\code{\link{op_equal}()} \cr
+\code{\link{op_erf}()} \cr
+\code{\link{op_erfinv}()} \cr
+\code{\link{op_exp}()} \cr
+\code{\link{op_expand_dims}()} \cr
+\code{\link{op_expm1}()} \cr
+\code{\link{op_extract_sequences}()} \cr
+\code{\link{op_eye}()} \cr
+\code{\link{op_fft}()} \cr
+\code{\link{op_fft2}()} \cr
+\code{\link{op_flip}()} \cr
+\code{\link{op_floor}()} \cr
+\code{\link{op_floor_divide}()} \cr
+\code{\link{op_fori_loop}()} \cr
+\code{\link{op_full}()} \cr
+\code{\link{op_full_like}()} \cr
+\code{\link{op_gelu}()} \cr
+\code{\link{op_get_item}()} \cr
+\code{\link{op_greater}()} \cr
+\code{\link{op_greater_equal}()} \cr
+\code{\link{op_hard_sigmoid}()} \cr
+\code{\link{op_hard_silu}()} \cr
+\code{\link{op_hstack}()} \cr
+\code{\link{op_identity}()} \cr
+\code{\link{op_imag}()} \cr
+\code{\link{op_image_affine_transform}()} \cr
+\code{\link{op_image_crop}()} \cr
+\code{\link{op_image_extract_patches}()} \cr
+\code{\link{op_image_map_coordinates}()} \cr
+\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_resize}()} \cr
+\code{\link{op_in_top_k}()} \cr
+\code{\link{op_inv}()} \cr
+\code{\link{op_irfft}()} \cr
+\code{\link{op_is_tensor}()} \cr
+\code{\link{op_isclose}()} \cr
+\code{\link{op_isfinite}()} \cr
+\code{\link{op_isinf}()} \cr
+\code{\link{op_isnan}()} \cr
+\code{\link{op_istft}()} \cr
+\code{\link{op_leaky_relu}()} \cr
+\code{\link{op_less}()} \cr
+\code{\link{op_less_equal}()} \cr
+\code{\link{op_linspace}()} \cr
+\code{\link{op_log}()} \cr
+\code{\link{op_log10}()} \cr
+\code{\link{op_log1p}()} \cr
+\code{\link{op_log2}()} \cr
+\code{\link{op_log_sigmoid}()} \cr
+\code{\link{op_log_softmax}()} \cr
+\code{\link{op_logaddexp}()} \cr
+\code{\link{op_logical_and}()} \cr
+\code{\link{op_logical_not}()} \cr
+\code{\link{op_logical_or}()} \cr
+\code{\link{op_logical_xor}()} \cr
+\code{\link{op_logspace}()} \cr
+\code{\link{op_logsumexp}()} \cr
+\code{\link{op_lu_factor}()} \cr
+\code{\link{op_matmul}()} \cr
+\code{\link{op_max}()} \cr
+\code{\link{op_max_pool}()} \cr
+\code{\link{op_maximum}()} \cr
+\code{\link{op_mean}()} \cr
+\code{\link{op_median}()} \cr
+\code{\link{op_meshgrid}()} \cr
+\code{\link{op_min}()} \cr
+\code{\link{op_minimum}()} \cr
+\code{\link{op_mod}()} \cr
+\code{\link{op_moments}()} \cr
+\code{\link{op_moveaxis}()} \cr
+\code{\link{op_multi_hot}()} \cr
+\code{\link{op_multiply}()} \cr
+\code{\link{op_nan_to_num}()} \cr
+\code{\link{op_ndim}()} \cr
+\code{\link{op_negative}()} \cr
+\code{\link{op_nonzero}()} \cr
+\code{\link{op_norm}()} \cr
+\code{\link{op_normalize}()} \cr
+\code{\link{op_not_equal}()} \cr
+\code{\link{op_one_hot}()} \cr
+\code{\link{op_ones}()} \cr
+\code{\link{op_ones_like}()} \cr
+\code{\link{op_outer}()} \cr
+\code{\link{op_pad}()} \cr
+\code{\link{op_power}()} \cr
+\code{\link{op_prod}()} \cr
+\code{\link{op_qr}()} \cr
+\code{\link{op_quantile}()} \cr
+\code{\link{op_ravel}()} \cr
+\code{\link{op_real}()} \cr
+\code{\link{op_reciprocal}()} \cr
+\code{\link{op_relu}()} \cr
+\code{\link{op_relu6}()} \cr
+\code{\link{op_repeat}()} \cr
+\code{\link{op_reshape}()} \cr
+\code{\link{op_rfft}()} \cr
+\code{\link{op_roll}()} \cr
+\code{\link{op_round}()} \cr
+\code{\link{op_rsqrt}()} \cr
+\code{\link{op_scatter}()} \cr
+\code{\link{op_scatter_update}()} \cr
+\code{\link{op_segment_max}()} \cr
+\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
+\code{\link{op_selu}()} \cr
+\code{\link{op_separable_conv}()} \cr
+\code{\link{op_shape}()} \cr
+\code{\link{op_sigmoid}()} \cr
+\code{\link{op_sign}()} \cr
+\code{\link{op_silu}()} \cr
+\code{\link{op_sin}()} \cr
+\code{\link{op_sinh}()} \cr
+\code{\link{op_size}()} \cr
+\code{\link{op_slice}()} \cr
+\code{\link{op_slice_update}()} \cr
+\code{\link{op_softmax}()} \cr
+\code{\link{op_softplus}()} \cr
+\code{\link{op_softsign}()} \cr
+\code{\link{op_solve}()} \cr
+\code{\link{op_solve_triangular}()} \cr
+\code{\link{op_sort}()} \cr
+\code{\link{op_sparse_categorical_crossentropy}()} \cr
+\code{\link{op_split}()} \cr
+\code{\link{op_sqrt}()} \cr
+\code{\link{op_square}()} \cr
+\code{\link{op_squeeze}()} \cr
+\code{\link{op_stack}()} \cr
+\code{\link{op_std}()} \cr
+\code{\link{op_stft}()} \cr
+\code{\link{op_stop_gradient}()} \cr
+\code{\link{op_subtract}()} \cr
+\code{\link{op_sum}()} \cr
+\code{\link{op_svd}()} \cr
+\code{\link{op_swapaxes}()} \cr
+\code{\link{op_take}()} \cr
+\code{\link{op_take_along_axis}()} \cr
+\code{\link{op_tan}()} \cr
+\code{\link{op_tanh}()} \cr
+\code{\link{op_tensordot}()} \cr
+\code{\link{op_tile}()} \cr
+\code{\link{op_top_k}()} \cr
+\code{\link{op_trace}()} \cr
+\code{\link{op_transpose}()} \cr
+\code{\link{op_tri}()} \cr
+\code{\link{op_tril}()} \cr
+\code{\link{op_triu}()} \cr
+\code{\link{op_unstack}()} \cr
+\code{\link{op_var}()} \cr
+\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
+\code{\link{op_vectorized_map}()} \cr
+\code{\link{op_vstack}()} \cr
+\code{\link{op_where}()} \cr
+\code{\link{op_while_loop}()} \cr
+\code{\link{op_zeros}()} \cr
+\code{\link{op_zeros_like}()} \cr
+}
+\concept{image ops}
+\concept{image utils}
+\concept{ops}
diff --git a/man/op_in_top_k.Rd b/man/op_in_top_k.Rd
index 1cfaaf977..823650cae 100644
--- a/man/op_in_top_k.Rd
+++ b/man/op_in_top_k.Rd
@@ -100,6 +100,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -114,6 +115,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -148,6 +150,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
\code{\link{op_is_tensor}()} \cr
@@ -219,6 +222,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -264,6 +268,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_inv.Rd b/man/op_inv.Rd
index 2aa47f1ac..5c4bbaba3 100644
--- a/man/op_inv.Rd
+++ b/man/op_inv.Rd
@@ -20,6 +20,7 @@ Other linear algebra ops: \cr
\code{\link{op_cholesky}()} \cr
\code{\link{op_det}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_lu_factor}()} \cr
\code{\link{op_norm}()} \cr
\code{\link{op_solve_triangular}()} \cr
@@ -67,6 +68,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -81,6 +83,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -115,6 +118,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_irfft}()} \cr
\code{\link{op_is_tensor}()} \cr
@@ -186,6 +190,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -231,6 +236,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_irfft.Rd b/man/op_irfft.Rd
index 05c7dfd13..17234cfe8 100644
--- a/man/op_irfft.Rd
+++ b/man/op_irfft.Rd
@@ -118,6 +118,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -132,6 +133,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -166,6 +168,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_is_tensor}()} \cr
@@ -237,6 +240,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -282,6 +286,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_is_tensor.Rd b/man/op_is_tensor.Rd
index c039e188b..e355d7a42 100644
--- a/man/op_is_tensor.Rd
+++ b/man/op_is_tensor.Rd
@@ -80,6 +80,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -94,6 +95,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -128,6 +130,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -199,6 +202,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -244,6 +248,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_isclose.Rd b/man/op_isclose.Rd
index 55bc6802b..37d933445 100644
--- a/man/op_isclose.Rd
+++ b/man/op_isclose.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -126,6 +127,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -153,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -319,6 +325,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -364,6 +371,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_isfinite.Rd b/man/op_isfinite.Rd
index 9f1635b82..07df539a5 100644
--- a/man/op_isfinite.Rd
+++ b/man/op_isfinite.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -126,6 +127,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -153,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -319,6 +325,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -364,6 +371,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_isinf.Rd b/man/op_isinf.Rd
index 24e7a4ef2..128a1d173 100644
--- a/man/op_isinf.Rd
+++ b/man/op_isinf.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_isnan.Rd b/man/op_isnan.Rd
index 36ca287aa..11bcf9a97 100644
--- a/man/op_isnan.Rd
+++ b/man/op_isnan.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_istft.Rd b/man/op_istft.Rd
index 47c0807d7..6a581e921 100644
--- a/man/op_istft.Rd
+++ b/man/op_istft.Rd
@@ -124,6 +124,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -138,6 +139,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -172,6 +174,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -243,6 +246,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -288,6 +292,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_leaky_relu.Rd b/man/op_leaky_relu.Rd
index 4822610a4..f05d4da10 100644
--- a/man/op_leaky_relu.Rd
+++ b/man/op_leaky_relu.Rd
@@ -118,6 +118,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -132,6 +133,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -166,6 +168,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -237,6 +240,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -282,6 +286,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_less.Rd b/man/op_less.Rd
index 1c4130264..c6e06e71e 100644
--- a/man/op_less.Rd
+++ b/man/op_less.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -269,6 +274,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_less_equal.Rd b/man/op_less_equal.Rd
index 719787e62..7579789b0 100644
--- a/man/op_less_equal.Rd
+++ b/man/op_less_equal.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -269,6 +274,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_linspace.Rd b/man/op_linspace.Rd
index ea3b5a0f6..0b1587643 100644
--- a/man/op_linspace.Rd
+++ b/man/op_linspace.Rd
@@ -26,7 +26,7 @@ Note that the step size changes when \code{endpoint} is \code{FALSE}.}
non-negative.}
\item{endpoint}{If \code{TRUE}, \code{stop} is the last sample. Otherwise, it is
-not included. Defaults to\code{TRUE}.}
+not included. Defaults to \code{TRUE}.}
\item{retstep}{If \code{TRUE}, return \verb{(samples, step)}, where \code{step} is the
spacing between samples.}
@@ -86,6 +86,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -159,6 +160,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -186,6 +188,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -233,6 +236,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -247,6 +251,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -281,6 +286,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -352,6 +358,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -397,6 +404,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_log.Rd b/man/op_log.Rd
index 62640d6d4..7e74e0ec9 100644
--- a/man/op_log.Rd
+++ b/man/op_log.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_log10.Rd b/man/op_log10.Rd
index b2c760c50..14fbe6e50 100644
--- a/man/op_log10.Rd
+++ b/man/op_log10.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_log1p.Rd b/man/op_log1p.Rd
index 6e167052a..95341ef3a 100644
--- a/man/op_log1p.Rd
+++ b/man/op_log1p.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_log2.Rd b/man/op_log2.Rd
index 57c50679c..9fea26cbf 100644
--- a/man/op_log2.Rd
+++ b/man/op_log2.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_log_sigmoid.Rd b/man/op_log_sigmoid.Rd
index 1bd9feac5..4f256e7b5 100644
--- a/man/op_log_sigmoid.Rd
+++ b/man/op_log_sigmoid.Rd
@@ -103,6 +103,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -117,6 +118,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -151,6 +153,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -222,6 +225,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -267,6 +271,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_log_softmax.Rd b/man/op_log_softmax.Rd
index 59a81a374..16f2c2c29 100644
--- a/man/op_log_softmax.Rd
+++ b/man/op_log_softmax.Rd
@@ -107,6 +107,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -121,6 +122,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -155,6 +157,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -226,6 +229,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -271,6 +275,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_logaddexp.Rd b/man/op_logaddexp.Rd
index fb36d7438..ceb51d35a 100644
--- a/man/op_logaddexp.Rd
+++ b/man/op_logaddexp.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -127,6 +128,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -249,6 +254,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -320,6 +326,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_logical_and.Rd b/man/op_logical_and.Rd
index e1cec6842..3ae7bbc90 100644
--- a/man/op_logical_and.Rd
+++ b/man/op_logical_and.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_logical_not.Rd b/man/op_logical_not.Rd
index 025431dae..79eacf756 100644
--- a/man/op_logical_not.Rd
+++ b/man/op_logical_not.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -126,6 +127,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -153,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -319,6 +325,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -364,6 +371,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_logical_or.Rd b/man/op_logical_or.Rd
index fac46060e..687e908ca 100644
--- a/man/op_logical_or.Rd
+++ b/man/op_logical_or.Rd
@@ -55,6 +55,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -128,6 +129,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -155,6 +157,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -202,6 +205,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -321,6 +327,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -366,6 +373,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_logical_xor.Rd b/man/op_logical_xor.Rd
index 22ff680aa..5c48db1aa 100644
--- a/man/op_logical_xor.Rd
+++ b/man/op_logical_xor.Rd
@@ -49,6 +49,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -122,6 +123,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -149,6 +151,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -196,6 +199,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -210,6 +214,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -244,6 +249,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -315,6 +321,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -360,6 +367,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_logspace.Rd b/man/op_logspace.Rd
index c7cde707e..fb3055c0e 100644
--- a/man/op_logspace.Rd
+++ b/man/op_logspace.Rd
@@ -25,7 +25,7 @@ are returned.}
\item{num}{Number of samples to generate. Defaults to \code{50}.}
\item{endpoint}{If \code{TRUE}, \code{stop} is the last sample. Otherwise, it is not
-included. Defaults to\code{TRUE}.}
+included. Defaults to \code{TRUE}.}
\item{base}{The base of the log space. Defaults to \code{10}.}
@@ -81,6 +81,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -154,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -181,6 +183,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -228,6 +231,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -242,6 +246,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -276,6 +281,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -347,6 +353,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -392,6 +399,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_logsumexp.Rd b/man/op_logsumexp.Rd
index 89f2b8f46..60a85e74e 100644
--- a/man/op_logsumexp.Rd
+++ b/man/op_logsumexp.Rd
@@ -98,6 +98,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -112,6 +113,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -146,6 +148,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -217,6 +220,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -262,6 +266,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_lu_factor.Rd b/man/op_lu_factor.Rd
index 154f48832..dba4888cc 100644
--- a/man/op_lu_factor.Rd
+++ b/man/op_lu_factor.Rd
@@ -22,6 +22,7 @@ Other linear algebra ops: \cr
\code{\link{op_cholesky}()} \cr
\code{\link{op_det}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_norm}()} \cr
\code{\link{op_solve_triangular}()} \cr
@@ -69,6 +70,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -83,6 +85,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -117,6 +120,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -188,6 +192,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -233,6 +238,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_matmul.Rd b/man/op_matmul.Rd
index 48404a94d..e9cc5a679 100644
--- a/man/op_matmul.Rd
+++ b/man/op_matmul.Rd
@@ -62,6 +62,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -135,6 +136,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -162,6 +164,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -209,6 +212,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -223,6 +227,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -257,6 +262,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -328,6 +334,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -373,6 +380,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_max.Rd b/man/op_max.Rd
index 35f61923b..8b3d951c7 100644
--- a/man/op_max.Rd
+++ b/man/op_max.Rd
@@ -14,9 +14,9 @@ op_max(x, axis = NULL, keepdims = FALSE, initial = NULL)
is used.}
\item{keepdims}{If this is set to \code{TRUE}, the axes which are reduced are left
-in the result as dimensions with size one. Defaults to\code{FALSE}.}
+in the result as dimensions with size one. Defaults to \code{FALSE}.}
-\item{initial}{The minimum value of an output element. Defaults to\code{NULL}.}
+\item{initial}{The minimum value of an output element. Defaults to \code{NULL}.}
}
\value{
Maximum of \code{x}.
@@ -92,6 +92,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -165,6 +166,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -192,6 +194,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -239,6 +242,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -253,6 +257,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -287,6 +292,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -358,6 +364,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -403,6 +410,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_max_pool.Rd b/man/op_max_pool.Rd
index da8dd1b43..103cb3bd1 100644
--- a/man/op_max_pool.Rd
+++ b/man/op_max_pool.Rd
@@ -127,6 +127,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -141,6 +142,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -175,6 +177,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -246,6 +249,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -291,6 +295,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_maximum.Rd b/man/op_maximum.Rd
index 470a918c2..53a06ff48 100644
--- a/man/op_maximum.Rd
+++ b/man/op_maximum.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_mean.Rd b/man/op_mean.Rd
index ad258838a..db5b91498 100644
--- a/man/op_mean.Rd
+++ b/man/op_mean.Rd
@@ -57,6 +57,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -130,6 +131,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -204,6 +207,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -218,6 +222,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -252,6 +257,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -323,6 +329,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_median.Rd b/man/op_median.Rd
index bc3e7bd7c..b70261ba9 100644
--- a/man/op_median.Rd
+++ b/man/op_median.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -127,6 +128,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -249,6 +254,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -320,6 +326,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_meshgrid.Rd b/man/op_meshgrid.Rd
index 1d36a8dbb..7f566295e 100644
--- a/man/op_meshgrid.Rd
+++ b/man/op_meshgrid.Rd
@@ -92,6 +92,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -165,6 +166,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -192,6 +194,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -239,6 +242,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -253,6 +257,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -287,6 +292,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -358,6 +364,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -403,6 +410,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_min.Rd b/man/op_min.Rd
index e7c02bbb5..d4c2f65e0 100644
--- a/man/op_min.Rd
+++ b/man/op_min.Rd
@@ -14,9 +14,9 @@ op_min(x, axis = NULL, keepdims = FALSE, initial = NULL)
is used.}
\item{keepdims}{If this is set to \code{TRUE}, the axes which are reduced are left
-in the result as dimensions with size one. Defaults to\code{FALSE}.}
+in the result as dimensions with size one. Defaults to \code{FALSE}.}
-\item{initial}{The maximum value of an output element. Defaults to\code{NULL}.}
+\item{initial}{The maximum value of an output element. Defaults to \code{NULL}.}
}
\value{
Minimum of \code{x}.
@@ -92,6 +92,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -165,6 +166,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -192,6 +194,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -239,6 +242,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -253,6 +257,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -287,6 +292,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -358,6 +364,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -403,6 +410,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_minimum.Rd b/man/op_minimum.Rd
index 4e3331c18..9c2becd0f 100644
--- a/man/op_minimum.Rd
+++ b/man/op_minimum.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_mod.Rd b/man/op_mod.Rd
index 6a740c0ad..3e9a36808 100644
--- a/man/op_mod.Rd
+++ b/man/op_mod.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -269,6 +274,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_moments.Rd b/man/op_moments.Rd
index 048757db2..47471c28f 100644
--- a/man/op_moments.Rd
+++ b/man/op_moments.Rd
@@ -116,6 +116,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -130,6 +131,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -164,6 +166,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -235,6 +238,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -280,6 +284,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_moveaxis.Rd b/man/op_moveaxis.Rd
index 28cfd1715..ba93b9d48 100644
--- a/man/op_moveaxis.Rd
+++ b/man/op_moveaxis.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_multi_hot.Rd b/man/op_multi_hot.Rd
index 2e4e81f04..3b32828d5 100644
--- a/man/op_multi_hot.Rd
+++ b/man/op_multi_hot.Rd
@@ -120,6 +120,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -134,6 +135,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -168,6 +170,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -239,6 +242,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -284,6 +288,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_multiply.Rd b/man/op_multiply.Rd
index 60ba83dfe..a0b479fcc 100644
--- a/man/op_multiply.Rd
+++ b/man/op_multiply.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -269,6 +274,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_nan_to_num.Rd b/man/op_nan_to_num.Rd
index 5a376eb8f..83a500f3f 100644
--- a/man/op_nan_to_num.Rd
+++ b/man/op_nan_to_num.Rd
@@ -4,10 +4,16 @@
\alias{op_nan_to_num}
\title{Replace NaN with zero and infinity with large finite numbers.}
\usage{
-op_nan_to_num(x)
+op_nan_to_num(x, nan = 0, posinf = NULL, neginf = NULL)
}
\arguments{
\item{x}{Input data.}
+
+\item{nan}{Optional float or int. Value to replace \code{NaN} entries with.}
+
+\item{posinf}{Optional float or int. Value to replace positive infinity with.}
+
+\item{neginf}{Optional float or int. Value to replace negative infinity with.}
}
\value{
\code{x}, with non-finite values replaced.
@@ -15,6 +21,29 @@ op_nan_to_num(x)
\description{
Replace NaN with zero and infinity with large finite numbers.
}
+\section{Example}{
+\if{html}{\out{
}}\preformatted{(x <- op_convert_to_tensor(c(1, NaN, -Inf, Inf)))
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{## tf.Tensor([ 1. nan -inf inf], shape=(4), dtype=float32)
+
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{op_nan_to_num(x)
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{## tf.Tensor([ 1.0000000e+00 0.0000000e+00 -3.4028235e+38 3.4028235e+38], shape=(4), dtype=float32)
+
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{op_nan_to_num(x, nan = -1, posinf = 2, neginf = -2)
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{## tf.Tensor([ 1. -1. -2. 2.], shape=(4), dtype=float32)
+
+}\if{html}{\out{
}}
+}
+
\seealso{
\itemize{
\item \url{https://keras.io/api/ops/numpy#nantonum-function}
@@ -51,6 +80,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +154,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +182,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +230,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +245,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +280,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +352,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +398,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_ndim.Rd b/man/op_ndim.Rd
index 550e9ccb0..01784d042 100644
--- a/man/op_ndim.Rd
+++ b/man/op_ndim.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_negative.Rd b/man/op_negative.Rd
index 4bb5ef3f3..dc4bca1c6 100644
--- a/man/op_negative.Rd
+++ b/man/op_negative.Rd
@@ -72,6 +72,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -145,6 +146,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -172,6 +174,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -219,6 +222,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -233,6 +237,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -267,6 +272,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -338,6 +344,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -383,6 +390,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_nonzero.Rd b/man/op_nonzero.Rd
index e141f4ab5..aaf8fe14a 100644
--- a/man/op_nonzero.Rd
+++ b/man/op_nonzero.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_norm.Rd b/man/op_norm.Rd
index d53c473ed..ae8cfb91d 100644
--- a/man/op_norm.Rd
+++ b/man/op_norm.Rd
@@ -81,6 +81,7 @@ Other linear algebra ops: \cr
\code{\link{op_cholesky}()} \cr
\code{\link{op_det}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_lu_factor}()} \cr
\code{\link{op_solve_triangular}()} \cr
@@ -128,6 +129,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -142,6 +144,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -176,6 +179,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -247,6 +251,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -292,6 +297,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_normalize.Rd b/man/op_normalize.Rd
index f6a72bd56..d3749d58c 100644
--- a/man/op_normalize.Rd
+++ b/man/op_normalize.Rd
@@ -112,6 +112,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -126,6 +127,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -160,6 +162,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -231,6 +234,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -276,6 +280,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_not_equal.Rd b/man/op_not_equal.Rd
index d56d1c911..541be65a5 100644
--- a/man/op_not_equal.Rd
+++ b/man/op_not_equal.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -269,6 +274,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_one_hot.Rd b/man/op_one_hot.Rd
index 5eb1ec0f0..e32c96d02 100644
--- a/man/op_one_hot.Rd
+++ b/man/op_one_hot.Rd
@@ -133,6 +133,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -147,6 +148,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -181,6 +183,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -252,6 +255,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -297,6 +301,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_ones.Rd b/man/op_ones.Rd
index 99b38fdaa..806b496e4 100644
--- a/man/op_ones.Rd
+++ b/man/op_ones.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -126,6 +127,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -153,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -319,6 +325,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -364,6 +371,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_ones_like.Rd b/man/op_ones_like.Rd
index 61dbe18e7..57276e1e1 100644
--- a/man/op_ones_like.Rd
+++ b/man/op_ones_like.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -126,6 +127,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -153,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -319,6 +325,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -364,6 +371,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_outer.Rd b/man/op_outer.Rd
index fbd574be3..d7572e6f9 100644
--- a/man/op_outer.Rd
+++ b/man/op_outer.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_pad.Rd b/man/op_pad.Rd
index d8082d195..d18af0291 100644
--- a/man/op_pad.Rd
+++ b/man/op_pad.Rd
@@ -78,6 +78,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -151,6 +152,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -178,6 +180,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -225,6 +228,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -239,6 +243,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -273,6 +278,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -344,6 +350,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -389,6 +396,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_power.Rd b/man/op_power.Rd
index 7517e38b2..f3d84d0f7 100644
--- a/man/op_power.Rd
+++ b/man/op_power.Rd
@@ -74,6 +74,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -147,6 +148,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -174,6 +176,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -221,6 +224,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -235,6 +239,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -269,6 +274,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -340,6 +346,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -385,6 +392,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_prod.Rd b/man/op_prod.Rd
index 294bb797d..f66e30e81 100644
--- a/man/op_prod.Rd
+++ b/man/op_prod.Rd
@@ -60,6 +60,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -133,6 +134,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -160,6 +162,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -207,6 +210,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -221,6 +225,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -255,6 +260,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -326,6 +332,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -371,6 +378,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_qr.Rd b/man/op_qr.Rd
index 7374ce669..49c6f0f84 100644
--- a/man/op_qr.Rd
+++ b/man/op_qr.Rd
@@ -110,6 +110,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -124,6 +125,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -158,6 +160,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -229,6 +232,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -274,6 +278,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_quantile.Rd b/man/op_quantile.Rd
index 1cfd90003..8a37e0b4a 100644
--- a/man/op_quantile.Rd
+++ b/man/op_quantile.Rd
@@ -73,6 +73,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -146,6 +147,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -173,6 +175,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -220,6 +223,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -234,6 +238,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -268,6 +273,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -339,6 +345,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -384,6 +391,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_ravel.Rd b/man/op_ravel.Rd
index 8a3dce1d0..1e66c5c8b 100644
--- a/man/op_ravel.Rd
+++ b/man/op_ravel.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_real.Rd b/man/op_real.Rd
index 1c23d68b5..d1bf861bd 100644
--- a/man/op_real.Rd
+++ b/man/op_real.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_reciprocal.Rd b/man/op_reciprocal.Rd
index 51678f67b..7d92ddfae 100644
--- a/man/op_reciprocal.Rd
+++ b/man/op_reciprocal.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -124,6 +125,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -317,6 +323,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_relu.Rd b/man/op_relu.Rd
index d170a591d..2c10f5152 100644
--- a/man/op_relu.Rd
+++ b/man/op_relu.Rd
@@ -109,6 +109,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -123,6 +124,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -157,6 +159,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -228,6 +231,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -273,6 +277,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_relu6.Rd b/man/op_relu6.Rd
index c14a6ce6b..4381887b4 100644
--- a/man/op_relu6.Rd
+++ b/man/op_relu6.Rd
@@ -109,6 +109,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -123,6 +124,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -157,6 +159,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -228,6 +231,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -273,6 +277,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_repeat.Rd b/man/op_repeat.Rd
index e5f90c5c1..d11c76e7d 100644
--- a/man/op_repeat.Rd
+++ b/man/op_repeat.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_reshape.Rd b/man/op_reshape.Rd
index 8137f6fa1..ddff6c079 100644
--- a/man/op_reshape.Rd
+++ b/man/op_reshape.Rd
@@ -55,6 +55,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -128,6 +129,7 @@ Other numpy ops: \cr
\code{\link{op_repeat}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -155,6 +157,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -202,6 +205,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -321,6 +327,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -366,6 +373,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_rfft.Rd b/man/op_rfft.Rd
index 0fbe7735c..d32b10e14 100644
--- a/man/op_rfft.Rd
+++ b/man/op_rfft.Rd
@@ -120,6 +120,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -134,6 +135,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -168,6 +170,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -239,6 +242,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -284,6 +288,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_roll.Rd b/man/op_roll.Rd
index 611f8138a..255161c88 100644
--- a/man/op_roll.Rd
+++ b/man/op_roll.Rd
@@ -57,6 +57,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -130,6 +131,7 @@ Other numpy ops: \cr
\code{\link{op_repeat}()} \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -204,6 +207,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -218,6 +222,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -252,6 +257,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -323,6 +329,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_round.Rd b/man/op_round.Rd
index e8878c1dc..161aec533 100644
--- a/man/op_round.Rd
+++ b/man/op_round.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -126,6 +127,7 @@ Other numpy ops: \cr
\code{\link{op_repeat}()} \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -153,6 +155,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -319,6 +325,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -364,6 +371,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_rsqrt.Rd b/man/op_rsqrt.Rd
index 1d40e560a..5a1961ff4 100644
--- a/man/op_rsqrt.Rd
+++ b/man/op_rsqrt.Rd
@@ -93,6 +93,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -107,6 +108,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -141,6 +143,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -212,6 +215,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -257,6 +261,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_scatter.Rd b/man/op_scatter.Rd
index b5ab66342..36015c74b 100644
--- a/man/op_scatter.Rd
+++ b/man/op_scatter.Rd
@@ -101,6 +101,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -115,6 +116,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -149,6 +151,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -220,6 +223,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -265,6 +269,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_scatter_update.Rd b/man/op_scatter_update.Rd
index 60662277d..3b5c9624f 100644
--- a/man/op_scatter_update.Rd
+++ b/man/op_scatter_update.Rd
@@ -165,6 +165,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -179,6 +180,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -213,6 +215,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -284,6 +287,7 @@ Other ops: \cr
\code{\link{op_scatter}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -329,6 +333,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_segment_max.Rd b/man/op_segment_max.Rd
index 969fce27d..1a1eb1afa 100644
--- a/man/op_segment_max.Rd
+++ b/man/op_segment_max.Rd
@@ -106,6 +106,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -120,6 +121,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -154,6 +156,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -225,6 +228,7 @@ Other ops: \cr
\code{\link{op_scatter}()} \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -270,6 +274,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_segment_sum.Rd b/man/op_segment_sum.Rd
index 5c60e7e5e..b9c354e67 100644
--- a/man/op_segment_sum.Rd
+++ b/man/op_segment_sum.Rd
@@ -103,6 +103,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -117,6 +118,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -151,6 +153,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -222,6 +225,7 @@ Other ops: \cr
\code{\link{op_scatter}()} \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -267,6 +271,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_select.Rd b/man/op_select.Rd
new file mode 100644
index 000000000..81b141f5c
--- /dev/null
+++ b/man/op_select.Rd
@@ -0,0 +1,403 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/ops.R
+\name{op_select}
+\alias{op_select}
+\title{Return elements from \code{choicelist}, based on conditions in \code{condlist}.}
+\usage{
+op_select(condlist, choicelist, default = 0L)
+}
+\arguments{
+\item{condlist}{List of boolean tensors.
+The list of conditions which determine from which array
+in choicelist the output elements are taken.
+When multiple conditions are satisfied,
+the first one encountered in condlist is used.}
+
+\item{choicelist}{List of tensors.
+The list of tensors from which the output elements are taken.
+This list has to be of the same length as \code{condlist}.}
+
+\item{default}{Optional scalar value.
+The element inserted in the output
+when all conditions evaluate to \code{FALSE}.}
+}
+\value{
+Tensor where the output at position \code{m} is the \code{m}-th element
+of the tensor in \code{choicelist} where the \code{m}-th element of the
+corresponding tensor in \code{condlist} is \code{TRUE}.
+}
+\description{
+Return elements from \code{choicelist}, based on conditions in \code{condlist}.
+}
+\section{Examples}{
+\if{html}{\out{
}}\preformatted{x <- op_arange(6L)
+condlist <- list(x < 3, x > 3)
+choicelist <- list(x, x^2)
+op_select(condlist, choicelist, 42)
+}\if{html}{\out{
}}
+
+\if{html}{\out{
}}\preformatted{## tf.Tensor([ 0 1 2 42 16 25], shape=(6), dtype=int32)
+
+}\if{html}{\out{
}}
+}
+
+\seealso{
+Other numpy ops: \cr
+\code{\link{op_abs}()} \cr
+\code{\link{op_add}()} \cr
+\code{\link{op_all}()} \cr
+\code{\link{op_any}()} \cr
+\code{\link{op_append}()} \cr
+\code{\link{op_arange}()} \cr
+\code{\link{op_arccos}()} \cr
+\code{\link{op_arccosh}()} \cr
+\code{\link{op_arcsin}()} \cr
+\code{\link{op_arcsinh}()} \cr
+\code{\link{op_arctan}()} \cr
+\code{\link{op_arctan2}()} \cr
+\code{\link{op_arctanh}()} \cr
+\code{\link{op_argmax}()} \cr
+\code{\link{op_argmin}()} \cr
+\code{\link{op_argsort}()} \cr
+\code{\link{op_array}()} \cr
+\code{\link{op_average}()} \cr
+\code{\link{op_bincount}()} \cr
+\code{\link{op_broadcast_to}()} \cr
+\code{\link{op_ceil}()} \cr
+\code{\link{op_clip}()} \cr
+\code{\link{op_concatenate}()} \cr
+\code{\link{op_conj}()} \cr
+\code{\link{op_copy}()} \cr
+\code{\link{op_correlate}()} \cr
+\code{\link{op_cos}()} \cr
+\code{\link{op_cosh}()} \cr
+\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
+\code{\link{op_cumprod}()} \cr
+\code{\link{op_cumsum}()} \cr
+\code{\link{op_diag}()} \cr
+\code{\link{op_diagonal}()} \cr
+\code{\link{op_diff}()} \cr
+\code{\link{op_digitize}()} \cr
+\code{\link{op_divide}()} \cr
+\code{\link{op_divide_no_nan}()} \cr
+\code{\link{op_dot}()} \cr
+\code{\link{op_einsum}()} \cr
+\code{\link{op_empty}()} \cr
+\code{\link{op_equal}()} \cr
+\code{\link{op_exp}()} \cr
+\code{\link{op_expand_dims}()} \cr
+\code{\link{op_expm1}()} \cr
+\code{\link{op_eye}()} \cr
+\code{\link{op_flip}()} \cr
+\code{\link{op_floor}()} \cr
+\code{\link{op_floor_divide}()} \cr
+\code{\link{op_full}()} \cr
+\code{\link{op_full_like}()} \cr
+\code{\link{op_get_item}()} \cr
+\code{\link{op_greater}()} \cr
+\code{\link{op_greater_equal}()} \cr
+\code{\link{op_hstack}()} \cr
+\code{\link{op_identity}()} \cr
+\code{\link{op_imag}()} \cr
+\code{\link{op_isclose}()} \cr
+\code{\link{op_isfinite}()} \cr
+\code{\link{op_isinf}()} \cr
+\code{\link{op_isnan}()} \cr
+\code{\link{op_less}()} \cr
+\code{\link{op_less_equal}()} \cr
+\code{\link{op_linspace}()} \cr
+\code{\link{op_log}()} \cr
+\code{\link{op_log10}()} \cr
+\code{\link{op_log1p}()} \cr
+\code{\link{op_log2}()} \cr
+\code{\link{op_logaddexp}()} \cr
+\code{\link{op_logical_and}()} \cr
+\code{\link{op_logical_not}()} \cr
+\code{\link{op_logical_or}()} \cr
+\code{\link{op_logical_xor}()} \cr
+\code{\link{op_logspace}()} \cr
+\code{\link{op_matmul}()} \cr
+\code{\link{op_max}()} \cr
+\code{\link{op_maximum}()} \cr
+\code{\link{op_mean}()} \cr
+\code{\link{op_median}()} \cr
+\code{\link{op_meshgrid}()} \cr
+\code{\link{op_min}()} \cr
+\code{\link{op_minimum}()} \cr
+\code{\link{op_mod}()} \cr
+\code{\link{op_moveaxis}()} \cr
+\code{\link{op_multiply}()} \cr
+\code{\link{op_nan_to_num}()} \cr
+\code{\link{op_ndim}()} \cr
+\code{\link{op_negative}()} \cr
+\code{\link{op_nonzero}()} \cr
+\code{\link{op_not_equal}()} \cr
+\code{\link{op_ones}()} \cr
+\code{\link{op_ones_like}()} \cr
+\code{\link{op_outer}()} \cr
+\code{\link{op_pad}()} \cr
+\code{\link{op_power}()} \cr
+\code{\link{op_prod}()} \cr
+\code{\link{op_quantile}()} \cr
+\code{\link{op_ravel}()} \cr
+\code{\link{op_real}()} \cr
+\code{\link{op_reciprocal}()} \cr
+\code{\link{op_repeat}()} \cr
+\code{\link{op_reshape}()} \cr
+\code{\link{op_roll}()} \cr
+\code{\link{op_round}()} \cr
+\code{\link{op_sign}()} \cr
+\code{\link{op_sin}()} \cr
+\code{\link{op_sinh}()} \cr
+\code{\link{op_size}()} \cr
+\code{\link{op_sort}()} \cr
+\code{\link{op_split}()} \cr
+\code{\link{op_sqrt}()} \cr
+\code{\link{op_square}()} \cr
+\code{\link{op_squeeze}()} \cr
+\code{\link{op_stack}()} \cr
+\code{\link{op_std}()} \cr
+\code{\link{op_subtract}()} \cr
+\code{\link{op_sum}()} \cr
+\code{\link{op_swapaxes}()} \cr
+\code{\link{op_take}()} \cr
+\code{\link{op_take_along_axis}()} \cr
+\code{\link{op_tan}()} \cr
+\code{\link{op_tanh}()} \cr
+\code{\link{op_tensordot}()} \cr
+\code{\link{op_tile}()} \cr
+\code{\link{op_trace}()} \cr
+\code{\link{op_transpose}()} \cr
+\code{\link{op_tri}()} \cr
+\code{\link{op_tril}()} \cr
+\code{\link{op_triu}()} \cr
+\code{\link{op_var}()} \cr
+\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
+\code{\link{op_vstack}()} \cr
+\code{\link{op_where}()} \cr
+\code{\link{op_zeros}()} \cr
+\code{\link{op_zeros_like}()} \cr
+
+Other ops: \cr
+\code{\link{op_abs}()} \cr
+\code{\link{op_add}()} \cr
+\code{\link{op_all}()} \cr
+\code{\link{op_any}()} \cr
+\code{\link{op_append}()} \cr
+\code{\link{op_arange}()} \cr
+\code{\link{op_arccos}()} \cr
+\code{\link{op_arccosh}()} \cr
+\code{\link{op_arcsin}()} \cr
+\code{\link{op_arcsinh}()} \cr
+\code{\link{op_arctan}()} \cr
+\code{\link{op_arctan2}()} \cr
+\code{\link{op_arctanh}()} \cr
+\code{\link{op_argmax}()} \cr
+\code{\link{op_argmin}()} \cr
+\code{\link{op_argsort}()} \cr
+\code{\link{op_array}()} \cr
+\code{\link{op_average}()} \cr
+\code{\link{op_average_pool}()} \cr
+\code{\link{op_batch_normalization}()} \cr
+\code{\link{op_binary_crossentropy}()} \cr
+\code{\link{op_bincount}()} \cr
+\code{\link{op_broadcast_to}()} \cr
+\code{\link{op_cast}()} \cr
+\code{\link{op_categorical_crossentropy}()} \cr
+\code{\link{op_ceil}()} \cr
+\code{\link{op_cholesky}()} \cr
+\code{\link{op_clip}()} \cr
+\code{\link{op_concatenate}()} \cr
+\code{\link{op_cond}()} \cr
+\code{\link{op_conj}()} \cr
+\code{\link{op_conv}()} \cr
+\code{\link{op_conv_transpose}()} \cr
+\code{\link{op_convert_to_numpy}()} \cr
+\code{\link{op_convert_to_tensor}()} \cr
+\code{\link{op_copy}()} \cr
+\code{\link{op_correlate}()} \cr
+\code{\link{op_cos}()} \cr
+\code{\link{op_cosh}()} \cr
+\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
+\code{\link{op_ctc_loss}()} \cr
+\code{\link{op_cumprod}()} \cr
+\code{\link{op_cumsum}()} \cr
+\code{\link{op_custom_gradient}()} \cr
+\code{\link{op_depthwise_conv}()} \cr
+\code{\link{op_det}()} \cr
+\code{\link{op_diag}()} \cr
+\code{\link{op_diagonal}()} \cr
+\code{\link{op_diff}()} \cr
+\code{\link{op_digitize}()} \cr
+\code{\link{op_divide}()} \cr
+\code{\link{op_divide_no_nan}()} \cr
+\code{\link{op_dot}()} \cr
+\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
+\code{\link{op_einsum}()} \cr
+\code{\link{op_elu}()} \cr
+\code{\link{op_empty}()} \cr
+\code{\link{op_equal}()} \cr
+\code{\link{op_erf}()} \cr
+\code{\link{op_erfinv}()} \cr
+\code{\link{op_exp}()} \cr
+\code{\link{op_expand_dims}()} \cr
+\code{\link{op_expm1}()} \cr
+\code{\link{op_extract_sequences}()} \cr
+\code{\link{op_eye}()} \cr
+\code{\link{op_fft}()} \cr
+\code{\link{op_fft2}()} \cr
+\code{\link{op_flip}()} \cr
+\code{\link{op_floor}()} \cr
+\code{\link{op_floor_divide}()} \cr
+\code{\link{op_fori_loop}()} \cr
+\code{\link{op_full}()} \cr
+\code{\link{op_full_like}()} \cr
+\code{\link{op_gelu}()} \cr
+\code{\link{op_get_item}()} \cr
+\code{\link{op_greater}()} \cr
+\code{\link{op_greater_equal}()} \cr
+\code{\link{op_hard_sigmoid}()} \cr
+\code{\link{op_hard_silu}()} \cr
+\code{\link{op_hstack}()} \cr
+\code{\link{op_identity}()} \cr
+\code{\link{op_imag}()} \cr
+\code{\link{op_image_affine_transform}()} \cr
+\code{\link{op_image_crop}()} \cr
+\code{\link{op_image_extract_patches}()} \cr
+\code{\link{op_image_map_coordinates}()} \cr
+\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
+\code{\link{op_in_top_k}()} \cr
+\code{\link{op_inv}()} \cr
+\code{\link{op_irfft}()} \cr
+\code{\link{op_is_tensor}()} \cr
+\code{\link{op_isclose}()} \cr
+\code{\link{op_isfinite}()} \cr
+\code{\link{op_isinf}()} \cr
+\code{\link{op_isnan}()} \cr
+\code{\link{op_istft}()} \cr
+\code{\link{op_leaky_relu}()} \cr
+\code{\link{op_less}()} \cr
+\code{\link{op_less_equal}()} \cr
+\code{\link{op_linspace}()} \cr
+\code{\link{op_log}()} \cr
+\code{\link{op_log10}()} \cr
+\code{\link{op_log1p}()} \cr
+\code{\link{op_log2}()} \cr
+\code{\link{op_log_sigmoid}()} \cr
+\code{\link{op_log_softmax}()} \cr
+\code{\link{op_logaddexp}()} \cr
+\code{\link{op_logical_and}()} \cr
+\code{\link{op_logical_not}()} \cr
+\code{\link{op_logical_or}()} \cr
+\code{\link{op_logical_xor}()} \cr
+\code{\link{op_logspace}()} \cr
+\code{\link{op_logsumexp}()} \cr
+\code{\link{op_lu_factor}()} \cr
+\code{\link{op_matmul}()} \cr
+\code{\link{op_max}()} \cr
+\code{\link{op_max_pool}()} \cr
+\code{\link{op_maximum}()} \cr
+\code{\link{op_mean}()} \cr
+\code{\link{op_median}()} \cr
+\code{\link{op_meshgrid}()} \cr
+\code{\link{op_min}()} \cr
+\code{\link{op_minimum}()} \cr
+\code{\link{op_mod}()} \cr
+\code{\link{op_moments}()} \cr
+\code{\link{op_moveaxis}()} \cr
+\code{\link{op_multi_hot}()} \cr
+\code{\link{op_multiply}()} \cr
+\code{\link{op_nan_to_num}()} \cr
+\code{\link{op_ndim}()} \cr
+\code{\link{op_negative}()} \cr
+\code{\link{op_nonzero}()} \cr
+\code{\link{op_norm}()} \cr
+\code{\link{op_normalize}()} \cr
+\code{\link{op_not_equal}()} \cr
+\code{\link{op_one_hot}()} \cr
+\code{\link{op_ones}()} \cr
+\code{\link{op_ones_like}()} \cr
+\code{\link{op_outer}()} \cr
+\code{\link{op_pad}()} \cr
+\code{\link{op_power}()} \cr
+\code{\link{op_prod}()} \cr
+\code{\link{op_qr}()} \cr
+\code{\link{op_quantile}()} \cr
+\code{\link{op_ravel}()} \cr
+\code{\link{op_real}()} \cr
+\code{\link{op_reciprocal}()} \cr
+\code{\link{op_relu}()} \cr
+\code{\link{op_relu6}()} \cr
+\code{\link{op_repeat}()} \cr
+\code{\link{op_reshape}()} \cr
+\code{\link{op_rfft}()} \cr
+\code{\link{op_roll}()} \cr
+\code{\link{op_round}()} \cr
+\code{\link{op_rsqrt}()} \cr
+\code{\link{op_scatter}()} \cr
+\code{\link{op_scatter_update}()} \cr
+\code{\link{op_segment_max}()} \cr
+\code{\link{op_segment_sum}()} \cr
+\code{\link{op_selu}()} \cr
+\code{\link{op_separable_conv}()} \cr
+\code{\link{op_shape}()} \cr
+\code{\link{op_sigmoid}()} \cr
+\code{\link{op_sign}()} \cr
+\code{\link{op_silu}()} \cr
+\code{\link{op_sin}()} \cr
+\code{\link{op_sinh}()} \cr
+\code{\link{op_size}()} \cr
+\code{\link{op_slice}()} \cr
+\code{\link{op_slice_update}()} \cr
+\code{\link{op_softmax}()} \cr
+\code{\link{op_softplus}()} \cr
+\code{\link{op_softsign}()} \cr
+\code{\link{op_solve}()} \cr
+\code{\link{op_solve_triangular}()} \cr
+\code{\link{op_sort}()} \cr
+\code{\link{op_sparse_categorical_crossentropy}()} \cr
+\code{\link{op_split}()} \cr
+\code{\link{op_sqrt}()} \cr
+\code{\link{op_square}()} \cr
+\code{\link{op_squeeze}()} \cr
+\code{\link{op_stack}()} \cr
+\code{\link{op_std}()} \cr
+\code{\link{op_stft}()} \cr
+\code{\link{op_stop_gradient}()} \cr
+\code{\link{op_subtract}()} \cr
+\code{\link{op_sum}()} \cr
+\code{\link{op_svd}()} \cr
+\code{\link{op_swapaxes}()} \cr
+\code{\link{op_take}()} \cr
+\code{\link{op_take_along_axis}()} \cr
+\code{\link{op_tan}()} \cr
+\code{\link{op_tanh}()} \cr
+\code{\link{op_tensordot}()} \cr
+\code{\link{op_tile}()} \cr
+\code{\link{op_top_k}()} \cr
+\code{\link{op_trace}()} \cr
+\code{\link{op_transpose}()} \cr
+\code{\link{op_tri}()} \cr
+\code{\link{op_tril}()} \cr
+\code{\link{op_triu}()} \cr
+\code{\link{op_unstack}()} \cr
+\code{\link{op_var}()} \cr
+\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
+\code{\link{op_vectorized_map}()} \cr
+\code{\link{op_vstack}()} \cr
+\code{\link{op_where}()} \cr
+\code{\link{op_while_loop}()} \cr
+\code{\link{op_zeros}()} \cr
+\code{\link{op_zeros_like}()} \cr
+}
+\concept{numpy ops}
+\concept{ops}
diff --git a/man/op_selu.Rd b/man/op_selu.Rd
index f36097be8..87e083500 100644
--- a/man/op_selu.Rd
+++ b/man/op_selu.Rd
@@ -106,6 +106,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -120,6 +121,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -154,6 +156,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -226,6 +229,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
\code{\link{op_sigmoid}()} \cr
@@ -270,6 +274,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_separable_conv.Rd b/man/op_separable_conv.Rd
index 75179974b..3c1f23e7b 100644
--- a/man/op_separable_conv.Rd
+++ b/man/op_separable_conv.Rd
@@ -136,6 +136,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -150,6 +151,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -184,6 +186,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -256,6 +259,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_shape}()} \cr
\code{\link{op_sigmoid}()} \cr
@@ -300,6 +304,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_shape.Rd b/man/op_shape.Rd
index c10c8b2c9..b0aa0113c 100644
--- a/man/op_shape.Rd
+++ b/man/op_shape.Rd
@@ -97,6 +97,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -111,6 +112,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -145,6 +147,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -217,6 +220,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_sigmoid}()} \cr
@@ -261,6 +265,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_sigmoid.Rd b/man/op_sigmoid.Rd
index b81350b41..ba7cf891f 100644
--- a/man/op_sigmoid.Rd
+++ b/man/op_sigmoid.Rd
@@ -103,6 +103,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -117,6 +118,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -151,6 +153,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -223,6 +226,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -267,6 +271,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_sign.Rd b/man/op_sign.Rd
index 715dec3e0..e6d025b4b 100644
--- a/man/op_sign.Rd
+++ b/man/op_sign.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
\code{\link{op_size}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_silu.Rd b/man/op_silu.Rd
index e468fbee3..bb24abfb9 100644
--- a/man/op_silu.Rd
+++ b/man/op_silu.Rd
@@ -111,6 +111,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -125,6 +126,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -159,6 +161,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -231,6 +234,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -275,6 +279,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_sin.Rd b/man/op_sin.Rd
index 7fabfe802..e1180f96f 100644
--- a/man/op_sin.Rd
+++ b/man/op_sin.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sinh}()} \cr
\code{\link{op_size}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_sinh.Rd b/man/op_sinh.Rd
index e9a5ede99..0f31c6aba 100644
--- a/man/op_sinh.Rd
+++ b/man/op_sinh.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_size}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_size.Rd b/man/op_size.Rd
index 8bf1f0349..8c21c65c2 100644
--- a/man/op_size.Rd
+++ b/man/op_size.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_slice.Rd b/man/op_slice.Rd
index 007c8b548..1415135b8 100644
--- a/man/op_slice.Rd
+++ b/man/op_slice.Rd
@@ -111,6 +111,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -125,6 +126,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -159,6 +161,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -231,6 +234,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -275,6 +279,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_slice_update.Rd b/man/op_slice_update.Rd
index 6321cb087..90336dcb8 100644
--- a/man/op_slice_update.Rd
+++ b/man/op_slice_update.Rd
@@ -108,6 +108,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -122,6 +123,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -156,6 +158,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -228,6 +231,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -272,6 +276,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_softmax.Rd b/man/op_softmax.Rd
index 48fe2c9c5..9657e9644 100644
--- a/man/op_softmax.Rd
+++ b/man/op_softmax.Rd
@@ -112,6 +112,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -126,6 +127,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -160,6 +162,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -232,6 +235,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -276,6 +280,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_softplus.Rd b/man/op_softplus.Rd
index c07107821..1438d9293 100644
--- a/man/op_softplus.Rd
+++ b/man/op_softplus.Rd
@@ -110,6 +110,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -124,6 +125,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -158,6 +160,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -230,6 +233,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -274,6 +278,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_softsign.Rd b/man/op_softsign.Rd
index 9f56f0343..351f4f2ff 100644
--- a/man/op_softsign.Rd
+++ b/man/op_softsign.Rd
@@ -109,6 +109,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -123,6 +124,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -157,6 +159,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -229,6 +232,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -273,6 +277,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_solve.Rd b/man/op_solve.Rd
index f113d68b1..52ecc9f02 100644
--- a/man/op_solve.Rd
+++ b/man/op_solve.Rd
@@ -93,6 +93,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -107,6 +108,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -141,6 +143,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -213,6 +216,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -257,6 +261,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_solve_triangular.Rd b/man/op_solve_triangular.Rd
index 781a55c84..ea90b5a1e 100644
--- a/man/op_solve_triangular.Rd
+++ b/man/op_solve_triangular.Rd
@@ -27,6 +27,7 @@ Other linear algebra ops: \cr
\code{\link{op_cholesky}()} \cr
\code{\link{op_det}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_lu_factor}()} \cr
\code{\link{op_norm}()} \cr
@@ -74,6 +75,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -88,6 +90,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -122,6 +125,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -194,6 +198,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -238,6 +243,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_sort.Rd b/man/op_sort.Rd
index 6c5d21e46..58a86e8e6 100644
--- a/man/op_sort.Rd
+++ b/man/op_sort.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -128,6 +129,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -249,6 +254,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -321,6 +327,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_sparse_categorical_crossentropy.Rd b/man/op_sparse_categorical_crossentropy.Rd
index 1c354c7bb..288eb0bc6 100644
--- a/man/op_sparse_categorical_crossentropy.Rd
+++ b/man/op_sparse_categorical_crossentropy.Rd
@@ -133,6 +133,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -147,6 +148,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -181,6 +183,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -253,6 +256,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -297,6 +301,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_split.Rd b/man/op_split.Rd
index d00fe5bda..cf31b409d 100644
--- a/man/op_split.Rd
+++ b/man/op_split.Rd
@@ -63,6 +63,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -137,6 +138,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -163,6 +165,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -210,6 +213,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -224,6 +228,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -258,6 +263,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -330,6 +336,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -374,6 +381,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_sqrt.Rd b/man/op_sqrt.Rd
index 304a4c925..657b61185 100644
--- a/man/op_sqrt.Rd
+++ b/man/op_sqrt.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_square.Rd b/man/op_square.Rd
index cb1ff790b..bdaa8f67b 100644
--- a/man/op_square.Rd
+++ b/man/op_square.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_squeeze.Rd b/man/op_squeeze.Rd
index 99e6f9ffb..90cf205ac 100644
--- a/man/op_squeeze.Rd
+++ b/man/op_squeeze.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -128,6 +129,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -249,6 +254,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -321,6 +327,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_stack.Rd b/man/op_stack.Rd
index a85784e3d..76a04723f 100644
--- a/man/op_stack.Rd
+++ b/man/op_stack.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -128,6 +129,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -249,6 +254,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -321,6 +327,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_std.Rd b/man/op_std.Rd
index 117be730d..c1eae40e7 100644
--- a/man/op_std.Rd
+++ b/man/op_std.Rd
@@ -58,6 +58,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -132,6 +133,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -158,6 +160,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -205,6 +208,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -219,6 +223,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -253,6 +258,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -325,6 +331,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -369,6 +376,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_stft.Rd b/man/op_stft.Rd
index da3cdd92f..3c5d0ccc4 100644
--- a/man/op_stft.Rd
+++ b/man/op_stft.Rd
@@ -127,6 +127,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -141,6 +142,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -175,6 +177,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -247,6 +250,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -291,6 +295,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_stop_gradient.Rd b/man/op_stop_gradient.Rd
index d5edf737a..94bfcc89e 100644
--- a/man/op_stop_gradient.Rd
+++ b/man/op_stop_gradient.Rd
@@ -86,6 +86,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -100,6 +101,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -134,6 +136,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -206,6 +209,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -250,6 +254,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_subtract.Rd b/man/op_subtract.Rd
index a54a1d98a..10e454879 100644
--- a/man/op_subtract.Rd
+++ b/man/op_subtract.Rd
@@ -68,6 +68,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -142,6 +143,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -168,6 +170,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -215,6 +218,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -229,6 +233,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -263,6 +268,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -335,6 +341,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -379,6 +386,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_sum.Rd b/man/op_sum.Rd
index 46e6f024d..eb4557b34 100644
--- a/man/op_sum.Rd
+++ b/man/op_sum.Rd
@@ -57,6 +57,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -131,6 +132,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -204,6 +207,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -218,6 +222,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -252,6 +257,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -324,6 +330,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_svd.Rd b/man/op_svd.Rd
index 97b63a5a5..2b4ddbfa1 100644
--- a/man/op_svd.Rd
+++ b/man/op_svd.Rd
@@ -36,6 +36,7 @@ Other linear algebra ops: \cr
\code{\link{op_cholesky}()} \cr
\code{\link{op_det}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_lu_factor}()} \cr
\code{\link{op_norm}()} \cr
@@ -83,6 +84,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -97,6 +99,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -131,6 +134,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -203,6 +207,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -247,6 +252,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_swapaxes.Rd b/man/op_swapaxes.Rd
index a8bb6fb24..b55383731 100644
--- a/man/op_swapaxes.Rd
+++ b/man/op_swapaxes.Rd
@@ -55,6 +55,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -155,6 +157,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -202,6 +205,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -366,6 +373,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_take.Rd b/man/op_take.Rd
index 4c87fb9a7..e5dec3219 100644
--- a/man/op_take.Rd
+++ b/man/op_take.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -130,6 +131,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -323,6 +329,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_take_along_axis.Rd b/man/op_take_along_axis.Rd
index 38ef95bb0..dd0886a59 100644
--- a/man/op_take_along_axis.Rd
+++ b/man/op_take_along_axis.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -130,6 +131,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -156,6 +158,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -323,6 +329,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -367,6 +374,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_tan.Rd b/man/op_tan.Rd
index 510e39676..db471504c 100644
--- a/man/op_tan.Rd
+++ b/man/op_tan.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_tanh.Rd b/man/op_tanh.Rd
index edf1f4728..5c58cc91c 100644
--- a/man/op_tanh.Rd
+++ b/man/op_tanh.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -151,6 +153,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -362,6 +369,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_tensordot.Rd b/man/op_tensordot.Rd
index ec7309981..634fa3022 100644
--- a/man/op_tensordot.Rd
+++ b/man/op_tensordot.Rd
@@ -62,6 +62,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -136,6 +137,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -162,6 +164,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -209,6 +212,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -223,6 +227,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -257,6 +262,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -329,6 +335,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -373,6 +380,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_tile.Rd b/man/op_tile.Rd
index a297b2588..2871b93a8 100644
--- a/man/op_tile.Rd
+++ b/man/op_tile.Rd
@@ -59,6 +59,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -133,6 +134,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -159,6 +161,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -206,6 +209,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -220,6 +224,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -254,6 +259,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -326,6 +332,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -370,6 +377,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_top_k.Rd b/man/op_top_k.Rd
index 7d6393d8e..7620c3c04 100644
--- a/man/op_top_k.Rd
+++ b/man/op_top_k.Rd
@@ -116,6 +116,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -130,6 +131,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -164,6 +166,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -236,6 +239,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -280,6 +284,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_trace.Rd b/man/op_trace.Rd
index b2be85f4d..21a5d1aeb 100644
--- a/man/op_trace.Rd
+++ b/man/op_trace.Rd
@@ -70,6 +70,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -144,6 +145,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -170,6 +172,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -217,6 +220,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -231,6 +235,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -265,6 +270,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -337,6 +343,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -381,6 +388,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_transpose.Rd b/man/op_transpose.Rd
index c1dd733ee..09cbff68c 100644
--- a/man/op_transpose.Rd
+++ b/man/op_transpose.Rd
@@ -54,6 +54,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -128,6 +129,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -201,6 +204,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -215,6 +219,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -249,6 +254,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -321,6 +327,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_tri.Rd b/man/op_tri.Rd
index ba402670d..6f30d56b5 100644
--- a/man/op_tri.Rd
+++ b/man/op_tri.Rd
@@ -60,6 +60,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -134,6 +135,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -160,6 +162,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -207,6 +210,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -221,6 +225,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -255,6 +260,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -327,6 +333,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -371,6 +378,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_tril.Rd b/man/op_tril.Rd
index a855bf748..6d00893b9 100644
--- a/man/op_tril.Rd
+++ b/man/op_tril.Rd
@@ -55,6 +55,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -155,6 +157,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -202,6 +205,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -366,6 +373,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_triu.Rd b/man/op_triu.Rd
index 6960a9aa2..0c7b9ef91 100644
--- a/man/op_triu.Rd
+++ b/man/op_triu.Rd
@@ -55,6 +55,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -129,6 +130,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -155,6 +157,7 @@ Other numpy ops: \cr
\code{\link{op_tril}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -202,6 +205,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -216,6 +220,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -250,6 +255,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -322,6 +328,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -366,6 +373,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_unstack.Rd b/man/op_unstack.Rd
index bdcc15838..67f8d19ea 100644
--- a/man/op_unstack.Rd
+++ b/man/op_unstack.Rd
@@ -127,6 +127,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -141,6 +142,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -175,6 +177,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -247,6 +250,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -291,6 +295,7 @@ Other ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_var.Rd b/man/op_var.Rd
index f606c7c25..e01de98e1 100644
--- a/man/op_var.Rd
+++ b/man/op_var.Rd
@@ -57,6 +57,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -131,6 +132,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_tril}()} \cr
\code{\link{op_triu}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -204,6 +207,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -218,6 +222,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -252,6 +257,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -324,6 +330,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_vdot.Rd b/man/op_vdot.Rd
index 3fb577afc..de56eb5d1 100644
--- a/man/op_vdot.Rd
+++ b/man/op_vdot.Rd
@@ -57,6 +57,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -131,6 +132,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_tril}()} \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -204,6 +207,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -218,6 +222,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -252,6 +257,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -324,6 +330,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_vectorize.Rd b/man/op_vectorize.Rd
new file mode 100644
index 000000000..7f302ac74
--- /dev/null
+++ b/man/op_vectorize.Rd
@@ -0,0 +1,408 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/ops.R
+\name{op_vectorize}
+\alias{op_vectorize}
+\title{Turn a function into a vectorized function.}
+\usage{
+op_vectorize(func, ..., excluded = NULL, signature = NULL)
+}
+\arguments{
+\item{func}{Callable of a single tensor argument.}
+
+\item{...}{For forward/backward compatability.}
+
+\item{excluded}{Optional set of integers representing
+positional arguments for which the function
+will not be vectorized.
+These will be passed directly to \code{func} unmodified.}
+
+\item{signature}{Optional generalized universal function signature,
+e.g., \code{"(m,n),(n)->(m)"} for vectorized
+matrix-vector multiplication. If provided,
+\code{func} will be called with (and expected to return)
+arrays with shapes given by the size of corresponding
+core dimensions. By default, \code{func} is assumed
+to take scalar tensors as input and output.}
+}
+\value{
+A new function that applies \code{func} to every element
+of its input along axis 1 (the batch axis, the first axis).
+}
+\description{
+Turn a function into a vectorized function.
+}
+\section{Examples}{
+\if{html}{\out{
}}\preformatted{# currently does not work w/ tensorflow backend
+if(config_backend() != "tensorflow") \{
+
+ myfunc <- function(a, b) a + b
+
+ vfunc <- op_vectorize(myfunc)
+ y <- vfunc(c(1, 2, 3, 4), 2)
+ print(y)
+ # with Jax backend, y is:
+ # Array([3., 4., 5., 6.], dtype=float32)
+\}
+}\if{html}{\out{
}}
+}
+
+\seealso{
+Other numpy ops: \cr
+\code{\link{op_abs}()} \cr
+\code{\link{op_add}()} \cr
+\code{\link{op_all}()} \cr
+\code{\link{op_any}()} \cr
+\code{\link{op_append}()} \cr
+\code{\link{op_arange}()} \cr
+\code{\link{op_arccos}()} \cr
+\code{\link{op_arccosh}()} \cr
+\code{\link{op_arcsin}()} \cr
+\code{\link{op_arcsinh}()} \cr
+\code{\link{op_arctan}()} \cr
+\code{\link{op_arctan2}()} \cr
+\code{\link{op_arctanh}()} \cr
+\code{\link{op_argmax}()} \cr
+\code{\link{op_argmin}()} \cr
+\code{\link{op_argsort}()} \cr
+\code{\link{op_array}()} \cr
+\code{\link{op_average}()} \cr
+\code{\link{op_bincount}()} \cr
+\code{\link{op_broadcast_to}()} \cr
+\code{\link{op_ceil}()} \cr
+\code{\link{op_clip}()} \cr
+\code{\link{op_concatenate}()} \cr
+\code{\link{op_conj}()} \cr
+\code{\link{op_copy}()} \cr
+\code{\link{op_correlate}()} \cr
+\code{\link{op_cos}()} \cr
+\code{\link{op_cosh}()} \cr
+\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
+\code{\link{op_cumprod}()} \cr
+\code{\link{op_cumsum}()} \cr
+\code{\link{op_diag}()} \cr
+\code{\link{op_diagonal}()} \cr
+\code{\link{op_diff}()} \cr
+\code{\link{op_digitize}()} \cr
+\code{\link{op_divide}()} \cr
+\code{\link{op_divide_no_nan}()} \cr
+\code{\link{op_dot}()} \cr
+\code{\link{op_einsum}()} \cr
+\code{\link{op_empty}()} \cr
+\code{\link{op_equal}()} \cr
+\code{\link{op_exp}()} \cr
+\code{\link{op_expand_dims}()} \cr
+\code{\link{op_expm1}()} \cr
+\code{\link{op_eye}()} \cr
+\code{\link{op_flip}()} \cr
+\code{\link{op_floor}()} \cr
+\code{\link{op_floor_divide}()} \cr
+\code{\link{op_full}()} \cr
+\code{\link{op_full_like}()} \cr
+\code{\link{op_get_item}()} \cr
+\code{\link{op_greater}()} \cr
+\code{\link{op_greater_equal}()} \cr
+\code{\link{op_hstack}()} \cr
+\code{\link{op_identity}()} \cr
+\code{\link{op_imag}()} \cr
+\code{\link{op_isclose}()} \cr
+\code{\link{op_isfinite}()} \cr
+\code{\link{op_isinf}()} \cr
+\code{\link{op_isnan}()} \cr
+\code{\link{op_less}()} \cr
+\code{\link{op_less_equal}()} \cr
+\code{\link{op_linspace}()} \cr
+\code{\link{op_log}()} \cr
+\code{\link{op_log10}()} \cr
+\code{\link{op_log1p}()} \cr
+\code{\link{op_log2}()} \cr
+\code{\link{op_logaddexp}()} \cr
+\code{\link{op_logical_and}()} \cr
+\code{\link{op_logical_not}()} \cr
+\code{\link{op_logical_or}()} \cr
+\code{\link{op_logical_xor}()} \cr
+\code{\link{op_logspace}()} \cr
+\code{\link{op_matmul}()} \cr
+\code{\link{op_max}()} \cr
+\code{\link{op_maximum}()} \cr
+\code{\link{op_mean}()} \cr
+\code{\link{op_median}()} \cr
+\code{\link{op_meshgrid}()} \cr
+\code{\link{op_min}()} \cr
+\code{\link{op_minimum}()} \cr
+\code{\link{op_mod}()} \cr
+\code{\link{op_moveaxis}()} \cr
+\code{\link{op_multiply}()} \cr
+\code{\link{op_nan_to_num}()} \cr
+\code{\link{op_ndim}()} \cr
+\code{\link{op_negative}()} \cr
+\code{\link{op_nonzero}()} \cr
+\code{\link{op_not_equal}()} \cr
+\code{\link{op_ones}()} \cr
+\code{\link{op_ones_like}()} \cr
+\code{\link{op_outer}()} \cr
+\code{\link{op_pad}()} \cr
+\code{\link{op_power}()} \cr
+\code{\link{op_prod}()} \cr
+\code{\link{op_quantile}()} \cr
+\code{\link{op_ravel}()} \cr
+\code{\link{op_real}()} \cr
+\code{\link{op_reciprocal}()} \cr
+\code{\link{op_repeat}()} \cr
+\code{\link{op_reshape}()} \cr
+\code{\link{op_roll}()} \cr
+\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
+\code{\link{op_sign}()} \cr
+\code{\link{op_sin}()} \cr
+\code{\link{op_sinh}()} \cr
+\code{\link{op_size}()} \cr
+\code{\link{op_sort}()} \cr
+\code{\link{op_split}()} \cr
+\code{\link{op_sqrt}()} \cr
+\code{\link{op_square}()} \cr
+\code{\link{op_squeeze}()} \cr
+\code{\link{op_stack}()} \cr
+\code{\link{op_std}()} \cr
+\code{\link{op_subtract}()} \cr
+\code{\link{op_sum}()} \cr
+\code{\link{op_swapaxes}()} \cr
+\code{\link{op_take}()} \cr
+\code{\link{op_take_along_axis}()} \cr
+\code{\link{op_tan}()} \cr
+\code{\link{op_tanh}()} \cr
+\code{\link{op_tensordot}()} \cr
+\code{\link{op_tile}()} \cr
+\code{\link{op_trace}()} \cr
+\code{\link{op_transpose}()} \cr
+\code{\link{op_tri}()} \cr
+\code{\link{op_tril}()} \cr
+\code{\link{op_triu}()} \cr
+\code{\link{op_var}()} \cr
+\code{\link{op_vdot}()} \cr
+\code{\link{op_vstack}()} \cr
+\code{\link{op_where}()} \cr
+\code{\link{op_zeros}()} \cr
+\code{\link{op_zeros_like}()} \cr
+
+Other ops: \cr
+\code{\link{op_abs}()} \cr
+\code{\link{op_add}()} \cr
+\code{\link{op_all}()} \cr
+\code{\link{op_any}()} \cr
+\code{\link{op_append}()} \cr
+\code{\link{op_arange}()} \cr
+\code{\link{op_arccos}()} \cr
+\code{\link{op_arccosh}()} \cr
+\code{\link{op_arcsin}()} \cr
+\code{\link{op_arcsinh}()} \cr
+\code{\link{op_arctan}()} \cr
+\code{\link{op_arctan2}()} \cr
+\code{\link{op_arctanh}()} \cr
+\code{\link{op_argmax}()} \cr
+\code{\link{op_argmin}()} \cr
+\code{\link{op_argsort}()} \cr
+\code{\link{op_array}()} \cr
+\code{\link{op_average}()} \cr
+\code{\link{op_average_pool}()} \cr
+\code{\link{op_batch_normalization}()} \cr
+\code{\link{op_binary_crossentropy}()} \cr
+\code{\link{op_bincount}()} \cr
+\code{\link{op_broadcast_to}()} \cr
+\code{\link{op_cast}()} \cr
+\code{\link{op_categorical_crossentropy}()} \cr
+\code{\link{op_ceil}()} \cr
+\code{\link{op_cholesky}()} \cr
+\code{\link{op_clip}()} \cr
+\code{\link{op_concatenate}()} \cr
+\code{\link{op_cond}()} \cr
+\code{\link{op_conj}()} \cr
+\code{\link{op_conv}()} \cr
+\code{\link{op_conv_transpose}()} \cr
+\code{\link{op_convert_to_numpy}()} \cr
+\code{\link{op_convert_to_tensor}()} \cr
+\code{\link{op_copy}()} \cr
+\code{\link{op_correlate}()} \cr
+\code{\link{op_cos}()} \cr
+\code{\link{op_cosh}()} \cr
+\code{\link{op_count_nonzero}()} \cr
+\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
+\code{\link{op_ctc_loss}()} \cr
+\code{\link{op_cumprod}()} \cr
+\code{\link{op_cumsum}()} \cr
+\code{\link{op_custom_gradient}()} \cr
+\code{\link{op_depthwise_conv}()} \cr
+\code{\link{op_det}()} \cr
+\code{\link{op_diag}()} \cr
+\code{\link{op_diagonal}()} \cr
+\code{\link{op_diff}()} \cr
+\code{\link{op_digitize}()} \cr
+\code{\link{op_divide}()} \cr
+\code{\link{op_divide_no_nan}()} \cr
+\code{\link{op_dot}()} \cr
+\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
+\code{\link{op_einsum}()} \cr
+\code{\link{op_elu}()} \cr
+\code{\link{op_empty}()} \cr
+\code{\link{op_equal}()} \cr
+\code{\link{op_erf}()} \cr
+\code{\link{op_erfinv}()} \cr
+\code{\link{op_exp}()} \cr
+\code{\link{op_expand_dims}()} \cr
+\code{\link{op_expm1}()} \cr
+\code{\link{op_extract_sequences}()} \cr
+\code{\link{op_eye}()} \cr
+\code{\link{op_fft}()} \cr
+\code{\link{op_fft2}()} \cr
+\code{\link{op_flip}()} \cr
+\code{\link{op_floor}()} \cr
+\code{\link{op_floor_divide}()} \cr
+\code{\link{op_fori_loop}()} \cr
+\code{\link{op_full}()} \cr
+\code{\link{op_full_like}()} \cr
+\code{\link{op_gelu}()} \cr
+\code{\link{op_get_item}()} \cr
+\code{\link{op_greater}()} \cr
+\code{\link{op_greater_equal}()} \cr
+\code{\link{op_hard_sigmoid}()} \cr
+\code{\link{op_hard_silu}()} \cr
+\code{\link{op_hstack}()} \cr
+\code{\link{op_identity}()} \cr
+\code{\link{op_imag}()} \cr
+\code{\link{op_image_affine_transform}()} \cr
+\code{\link{op_image_crop}()} \cr
+\code{\link{op_image_extract_patches}()} \cr
+\code{\link{op_image_map_coordinates}()} \cr
+\code{\link{op_image_pad}()} \cr
+\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
+\code{\link{op_in_top_k}()} \cr
+\code{\link{op_inv}()} \cr
+\code{\link{op_irfft}()} \cr
+\code{\link{op_is_tensor}()} \cr
+\code{\link{op_isclose}()} \cr
+\code{\link{op_isfinite}()} \cr
+\code{\link{op_isinf}()} \cr
+\code{\link{op_isnan}()} \cr
+\code{\link{op_istft}()} \cr
+\code{\link{op_leaky_relu}()} \cr
+\code{\link{op_less}()} \cr
+\code{\link{op_less_equal}()} \cr
+\code{\link{op_linspace}()} \cr
+\code{\link{op_log}()} \cr
+\code{\link{op_log10}()} \cr
+\code{\link{op_log1p}()} \cr
+\code{\link{op_log2}()} \cr
+\code{\link{op_log_sigmoid}()} \cr
+\code{\link{op_log_softmax}()} \cr
+\code{\link{op_logaddexp}()} \cr
+\code{\link{op_logical_and}()} \cr
+\code{\link{op_logical_not}()} \cr
+\code{\link{op_logical_or}()} \cr
+\code{\link{op_logical_xor}()} \cr
+\code{\link{op_logspace}()} \cr
+\code{\link{op_logsumexp}()} \cr
+\code{\link{op_lu_factor}()} \cr
+\code{\link{op_matmul}()} \cr
+\code{\link{op_max}()} \cr
+\code{\link{op_max_pool}()} \cr
+\code{\link{op_maximum}()} \cr
+\code{\link{op_mean}()} \cr
+\code{\link{op_median}()} \cr
+\code{\link{op_meshgrid}()} \cr
+\code{\link{op_min}()} \cr
+\code{\link{op_minimum}()} \cr
+\code{\link{op_mod}()} \cr
+\code{\link{op_moments}()} \cr
+\code{\link{op_moveaxis}()} \cr
+\code{\link{op_multi_hot}()} \cr
+\code{\link{op_multiply}()} \cr
+\code{\link{op_nan_to_num}()} \cr
+\code{\link{op_ndim}()} \cr
+\code{\link{op_negative}()} \cr
+\code{\link{op_nonzero}()} \cr
+\code{\link{op_norm}()} \cr
+\code{\link{op_normalize}()} \cr
+\code{\link{op_not_equal}()} \cr
+\code{\link{op_one_hot}()} \cr
+\code{\link{op_ones}()} \cr
+\code{\link{op_ones_like}()} \cr
+\code{\link{op_outer}()} \cr
+\code{\link{op_pad}()} \cr
+\code{\link{op_power}()} \cr
+\code{\link{op_prod}()} \cr
+\code{\link{op_qr}()} \cr
+\code{\link{op_quantile}()} \cr
+\code{\link{op_ravel}()} \cr
+\code{\link{op_real}()} \cr
+\code{\link{op_reciprocal}()} \cr
+\code{\link{op_relu}()} \cr
+\code{\link{op_relu6}()} \cr
+\code{\link{op_repeat}()} \cr
+\code{\link{op_reshape}()} \cr
+\code{\link{op_rfft}()} \cr
+\code{\link{op_roll}()} \cr
+\code{\link{op_round}()} \cr
+\code{\link{op_rsqrt}()} \cr
+\code{\link{op_scatter}()} \cr
+\code{\link{op_scatter_update}()} \cr
+\code{\link{op_segment_max}()} \cr
+\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
+\code{\link{op_selu}()} \cr
+\code{\link{op_separable_conv}()} \cr
+\code{\link{op_shape}()} \cr
+\code{\link{op_sigmoid}()} \cr
+\code{\link{op_sign}()} \cr
+\code{\link{op_silu}()} \cr
+\code{\link{op_sin}()} \cr
+\code{\link{op_sinh}()} \cr
+\code{\link{op_size}()} \cr
+\code{\link{op_slice}()} \cr
+\code{\link{op_slice_update}()} \cr
+\code{\link{op_softmax}()} \cr
+\code{\link{op_softplus}()} \cr
+\code{\link{op_softsign}()} \cr
+\code{\link{op_solve}()} \cr
+\code{\link{op_solve_triangular}()} \cr
+\code{\link{op_sort}()} \cr
+\code{\link{op_sparse_categorical_crossentropy}()} \cr
+\code{\link{op_split}()} \cr
+\code{\link{op_sqrt}()} \cr
+\code{\link{op_square}()} \cr
+\code{\link{op_squeeze}()} \cr
+\code{\link{op_stack}()} \cr
+\code{\link{op_std}()} \cr
+\code{\link{op_stft}()} \cr
+\code{\link{op_stop_gradient}()} \cr
+\code{\link{op_subtract}()} \cr
+\code{\link{op_sum}()} \cr
+\code{\link{op_svd}()} \cr
+\code{\link{op_swapaxes}()} \cr
+\code{\link{op_take}()} \cr
+\code{\link{op_take_along_axis}()} \cr
+\code{\link{op_tan}()} \cr
+\code{\link{op_tanh}()} \cr
+\code{\link{op_tensordot}()} \cr
+\code{\link{op_tile}()} \cr
+\code{\link{op_top_k}()} \cr
+\code{\link{op_trace}()} \cr
+\code{\link{op_transpose}()} \cr
+\code{\link{op_tri}()} \cr
+\code{\link{op_tril}()} \cr
+\code{\link{op_triu}()} \cr
+\code{\link{op_unstack}()} \cr
+\code{\link{op_var}()} \cr
+\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorized_map}()} \cr
+\code{\link{op_vstack}()} \cr
+\code{\link{op_where}()} \cr
+\code{\link{op_while_loop}()} \cr
+\code{\link{op_zeros}()} \cr
+\code{\link{op_zeros_like}()} \cr
+}
+\concept{numpy ops}
+\concept{ops}
diff --git a/man/op_vectorized_map.Rd b/man/op_vectorized_map.Rd
index 3050137a1..a07e423ae 100644
--- a/man/op_vectorized_map.Rd
+++ b/man/op_vectorized_map.Rd
@@ -286,6 +286,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -300,6 +301,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -334,6 +336,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -406,6 +409,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -451,6 +455,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_while_loop}()} \cr
diff --git a/man/op_vstack.Rd b/man/op_vstack.Rd
index 75ada9021..9338f7939 100644
--- a/man/op_vstack.Rd
+++ b/man/op_vstack.Rd
@@ -51,6 +51,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -125,6 +126,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -152,6 +154,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
\code{\link{op_zeros_like}()} \cr
@@ -198,6 +201,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -212,6 +216,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -246,6 +251,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -318,6 +324,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -363,6 +370,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_while_loop}()} \cr
diff --git a/man/op_where.Rd b/man/op_where.Rd
index 5a67ba3b1..5f62cca92 100644
--- a/man/op_where.Rd
+++ b/man/op_where.Rd
@@ -56,6 +56,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -130,6 +131,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -157,6 +159,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_zeros}()} \cr
\code{\link{op_zeros_like}()} \cr
@@ -203,6 +206,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -217,6 +221,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -251,6 +256,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -323,6 +329,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -368,6 +375,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_while_loop}()} \cr
diff --git a/man/op_while_loop.Rd b/man/op_while_loop.Rd
index fb8b1f4e1..4aafa0c3e 100644
--- a/man/op_while_loop.Rd
+++ b/man/op_while_loop.Rd
@@ -128,6 +128,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -142,6 +143,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -176,6 +178,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -248,6 +251,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -293,6 +297,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_zeros.Rd b/man/op_zeros.Rd
index 4550a44d0..1b68ce641 100644
--- a/man/op_zeros.Rd
+++ b/man/op_zeros.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -127,6 +128,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros_like}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -320,6 +326,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/op_zeros_like.Rd b/man/op_zeros_like.Rd
index 6bf026289..1e80de717 100644
--- a/man/op_zeros_like.Rd
+++ b/man/op_zeros_like.Rd
@@ -53,6 +53,7 @@ Other numpy ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
\code{\link{op_diag}()} \cr
@@ -127,6 +128,7 @@ Other numpy ops: \cr
\code{\link{op_reshape}()} \cr
\code{\link{op_roll}()} \cr
\code{\link{op_round}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_sign}()} \cr
\code{\link{op_sin}()} \cr
\code{\link{op_sinh}()} \cr
@@ -154,6 +156,7 @@ Other numpy ops: \cr
\code{\link{op_triu}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
\code{\link{op_zeros}()} \cr
@@ -200,6 +203,7 @@ Other ops: \cr
\code{\link{op_cosh}()} \cr
\code{\link{op_count_nonzero}()} \cr
\code{\link{op_cross}()} \cr
+\code{\link{op_ctc_decode}()} \cr
\code{\link{op_ctc_loss}()} \cr
\code{\link{op_cumprod}()} \cr
\code{\link{op_cumsum}()} \cr
@@ -214,6 +218,7 @@ Other ops: \cr
\code{\link{op_divide_no_nan}()} \cr
\code{\link{op_dot}()} \cr
\code{\link{op_eig}()} \cr
+\code{\link{op_eigh}()} \cr
\code{\link{op_einsum}()} \cr
\code{\link{op_elu}()} \cr
\code{\link{op_empty}()} \cr
@@ -248,6 +253,7 @@ Other ops: \cr
\code{\link{op_image_map_coordinates}()} \cr
\code{\link{op_image_pad}()} \cr
\code{\link{op_image_resize}()} \cr
+\code{\link{op_image_rgb_to_grayscale}()} \cr
\code{\link{op_in_top_k}()} \cr
\code{\link{op_inv}()} \cr
\code{\link{op_irfft}()} \cr
@@ -320,6 +326,7 @@ Other ops: \cr
\code{\link{op_scatter_update}()} \cr
\code{\link{op_segment_max}()} \cr
\code{\link{op_segment_sum}()} \cr
+\code{\link{op_select}()} \cr
\code{\link{op_selu}()} \cr
\code{\link{op_separable_conv}()} \cr
\code{\link{op_shape}()} \cr
@@ -365,6 +372,7 @@ Other ops: \cr
\code{\link{op_unstack}()} \cr
\code{\link{op_var}()} \cr
\code{\link{op_vdot}()} \cr
+\code{\link{op_vectorize}()} \cr
\code{\link{op_vectorized_map}()} \cr
\code{\link{op_vstack}()} \cr
\code{\link{op_where}()} \cr
diff --git a/man/optimizer_rmsprop.Rd b/man/optimizer_rmsprop.Rd
index a486f7620..b7d7d7542 100644
--- a/man/optimizer_rmsprop.Rd
+++ b/man/optimizer_rmsprop.Rd
@@ -16,7 +16,7 @@ optimizer_rmsprop(
global_clipnorm = NULL,
use_ema = FALSE,
ema_momentum = 0.99,
- ema_overwrite_frequency = 100L,
+ ema_overwrite_frequency = NULL,
name = "rmsprop",
...,
loss_scale_factor = NULL,
diff --git a/man/random_seed_generator.Rd b/man/random_seed_generator.Rd
index 61e6e7b24..9ae884e45 100644
--- a/man/random_seed_generator.Rd
+++ b/man/random_seed_generator.Rd
@@ -4,11 +4,13 @@
\alias{random_seed_generator}
\title{Generates variable seeds upon each call to a RNG-using function.}
\usage{
-random_seed_generator(seed = NULL, ...)
+random_seed_generator(seed = NULL, name = NULL, ...)
}
\arguments{
\item{seed}{Initial seed for the random number generator}
+\item{name}{String, name for the object}
+
\item{...}{For forward/backward compatability.}
}
\value{
From c7c92036f5f6a518a0b48c8263164d58cb662d90 Mon Sep 17 00:00:00 2001
From: Tomasz Kalinowski
Date: Tue, 23 Apr 2024 13:47:00 -0400
Subject: [PATCH 33/38] rebuild website
---
docs/404.html | 10 +-
docs/LICENSE-text.html | 8 +-
.../custom_train_step_in_tensorflow.html | 10 +-
.../distributed_training_with_tensorflow.html | 10 +-
docs/articles/distribution.html | 10 +-
docs/articles/examples/index.html | 10 +-
.../nlp/text_classification_from_scratch.html | 10 +-
.../imbalanced_classification.html | 10 +-
...ata_classification_with_feature_space.html | 10 +-
...imeseries_classification_from_scratch.html | 10 +-
.../articles/examples/vision/autoencoder.html | 10 +-
.../examples/vision/mnist_convnet.html | 10 +-
.../oxford_pets_image_segmentation.html | 10 +-
docs/articles/functional_api.html | 10 +-
docs/articles/getting_started.html | 10 +-
docs/articles/index.html | 10 +-
.../intro_to_keras_for_engineers.html | 10 +-
.../intro_to_keras_for_researchers.html | 10 +-
...new_layers_and_models_via_subclassing.html | 10 +-
docs/articles/sequential_model.html | 10 +-
docs/articles/serialization_and_saving.html | 10 +-
.../training_with_built_in_methods.html | 10 +-
docs/articles/transfer_learning.html | 10 +-
.../understanding_masking_and_padding.html | 10 +-
..._a_custom_training_loop_in_tensorflow.html | 10 +-
docs/articles/writing_your_own_callbacks.html | 10 +-
docs/authors.html | 12 +-
docs/deps/bootstrap-5.3.1/bootstrap.min.css | 2 +-
docs/index.html | 10 +-
docs/news/index.html | 25 ++-
docs/pkgdown.js | 8 +-
docs/pkgdown.yml | 4 +-
docs/reference/Callback.html | 8 +-
docs/reference/Constraint.html | 8 +-
docs/reference/Layer.html | 13 +-
docs/reference/LearningRateSchedule.html | 8 +-
docs/reference/Loss.html | 10 +-
docs/reference/Metric.html | 8 +-
docs/reference/Model.html | 8 +-
docs/reference/activation_elu.html | 8 +-
docs/reference/activation_exponential.html | 8 +-
docs/reference/activation_gelu.html | 8 +-
docs/reference/activation_hard_sigmoid.html | 8 +-
docs/reference/activation_hard_silu.html | 8 +-
docs/reference/activation_leaky_relu.html | 8 +-
docs/reference/activation_linear.html | 8 +-
docs/reference/activation_log_softmax.html | 8 +-
docs/reference/activation_mish.html | 8 +-
docs/reference/activation_relu.html | 8 +-
docs/reference/activation_relu6.html | 8 +-
docs/reference/activation_selu.html | 8 +-
docs/reference/activation_sigmoid.html | 8 +-
docs/reference/activation_silu.html | 8 +-
docs/reference/activation_softmax.html | 8 +-
docs/reference/activation_softplus.html | 8 +-
docs/reference/activation_softsign.html | 8 +-
docs/reference/activation_tanh.html | 8 +-
docs/reference/active_property.html | 8 +-
docs/reference/adapt.html | 8 +-
docs/reference/application_convnext_base.html | 8 +-
.../reference/application_convnext_large.html | 8 +-
.../reference/application_convnext_small.html | 8 +-
docs/reference/application_convnext_tiny.html | 8 +-
.../application_convnext_xlarge.html | 8 +-
docs/reference/application_densenet121.html | 8 +-
docs/reference/application_densenet169.html | 8 +-
docs/reference/application_densenet201.html | 8 +-
.../application_efficientnet_b0.html | 8 +-
.../application_efficientnet_b1.html | 8 +-
.../application_efficientnet_b2.html | 8 +-
.../application_efficientnet_b3.html | 8 +-
.../application_efficientnet_b4.html | 8 +-
.../application_efficientnet_b5.html | 8 +-
.../application_efficientnet_b6.html | 8 +-
.../application_efficientnet_b7.html | 8 +-
.../application_efficientnet_v2b0.html | 8 +-
.../application_efficientnet_v2b1.html | 8 +-
.../application_efficientnet_v2b2.html | 8 +-
.../application_efficientnet_v2b3.html | 8 +-
.../application_efficientnet_v2l.html | 8 +-
.../application_efficientnet_v2m.html | 8 +-
.../application_efficientnet_v2s.html | 8 +-
.../application_inception_resnet_v2.html | 8 +-
docs/reference/application_inception_v3.html | 8 +-
docs/reference/application_mobilenet.html | 8 +-
docs/reference/application_mobilenet_v2.html | 8 +-
.../application_mobilenet_v3_large.html | 8 +-
.../application_mobilenet_v3_small.html | 8 +-
docs/reference/application_nasnetlarge.html | 8 +-
docs/reference/application_nasnetmobile.html | 8 +-
docs/reference/application_resnet101.html | 8 +-
docs/reference/application_resnet101_v2.html | 8 +-
docs/reference/application_resnet152.html | 8 +-
docs/reference/application_resnet152_v2.html | 8 +-
docs/reference/application_resnet50.html | 8 +-
docs/reference/application_resnet50_v2.html | 8 +-
docs/reference/application_vgg16.html | 8 +-
docs/reference/application_vgg19.html | 8 +-
docs/reference/application_xception.html | 8 +-
.../audio_dataset_from_directory.html | 8 +-
docs/reference/bidirectional.html | 8 +-
.../callback_backup_and_restore.html | 12 +-
docs/reference/callback_csv_logger.html | 8 +-
docs/reference/callback_early_stopping.html | 8 +-
docs/reference/callback_lambda.html | 8 +-
.../callback_learning_rate_scheduler.html | 8 +-
docs/reference/callback_model_checkpoint.html | 8 +-
.../callback_reduce_lr_on_plateau.html | 8 +-
docs/reference/callback_remote_monitor.html | 8 +-
docs/reference/callback_swap_ema_weights.html | 8 +-
docs/reference/callback_tensorboard.html | 8 +-
docs/reference/callback_terminate_on_nan.html | 8 +-
docs/reference/clear_session.html | 21 ++-
docs/reference/clone_model.html | 8 +-
.../compile.keras.src.models.model.Model.html | 8 +-
docs/reference/config_backend.html | 8 +-
.../config_disable_interactive_logging.html | 8 +-
.../config_disable_traceback_filtering.html | 8 +-
docs/reference/config_dtype_policy.html | 8 +-
.../config_enable_interactive_logging.html | 8 +-
.../config_enable_traceback_filtering.html | 8 +-
.../config_enable_unsafe_deserialization.html | 8 +-
docs/reference/config_epsilon.html | 8 +-
docs/reference/config_floatx.html | 8 +-
docs/reference/config_image_data_format.html | 8 +-
...config_is_interactive_logging_enabled.html | 8 +-
...config_is_traceback_filtering_enabled.html | 8 +-
docs/reference/config_set_backend.html | 8 +-
docs/reference/config_set_dtype_policy.html | 8 +-
docs/reference/config_set_epsilon.html | 8 +-
docs/reference/config_set_floatx.html | 8 +-
.../config_set_image_data_format.html | 8 +-
docs/reference/constraint_maxnorm.html | 8 +-
docs/reference/constraint_minmaxnorm.html | 8 +-
docs/reference/constraint_nonneg.html | 8 +-
docs/reference/constraint_unitnorm.html | 8 +-
docs/reference/count_params.html | 8 +-
docs/reference/custom_metric.html | 8 +-
docs/reference/dataset_boston_housing.html | 8 +-
docs/reference/dataset_cifar10.html | 8 +-
docs/reference/dataset_cifar100.html | 8 +-
docs/reference/dataset_fashion_mnist.html | 8 +-
docs/reference/dataset_imdb.html | 8 +-
docs/reference/dataset_mnist.html | 8 +-
docs/reference/dataset_reuters.html | 8 +-
docs/reference/deserialize_keras_object.html | 8 +-
...evaluate.keras.src.models.model.Model.html | 8 +-
...vedmodel.keras.src.models.model.Model.html | 8 +-
.../fit.keras.src.models.model.Model.html | 8 +-
docs/reference/freeze_weights.html | 8 +-
docs/reference/get_config.html | 8 +-
docs/reference/get_custom_objects.html | 8 +-
docs/reference/get_file.html | 8 +-
docs/reference/get_layer.html | 8 +-
docs/reference/get_registered_name.html | 8 +-
docs/reference/get_registered_object.html | 8 +-
docs/reference/get_source_inputs.html | 8 +-
docs/reference/get_weights.html | 8 +-
docs/reference/grapes-py_class-grapes.html | 8 +-
docs/reference/grapes-set-active-grapes.html | 8 +-
docs/reference/image_array_save.html | 10 +-
.../image_dataset_from_directory.html | 8 +-
docs/reference/image_from_array.html | 10 +-
docs/reference/image_load.html | 10 +-
docs/reference/image_smart_resize.html | 10 +-
docs/reference/image_to_array.html | 10 +-
.../imagenet_decode_predictions.html | 119 ++++++++++++
docs/reference/imagenet_preprocess_input.html | 130 +++++++++++++
docs/reference/index.html | 49 ++++-
docs/reference/initializer_constant.html | 8 +-
docs/reference/initializer_glorot_normal.html | 8 +-
.../reference/initializer_glorot_uniform.html | 8 +-
docs/reference/initializer_he_normal.html | 8 +-
docs/reference/initializer_he_uniform.html | 8 +-
docs/reference/initializer_identity.html | 8 +-
docs/reference/initializer_lecun_normal.html | 8 +-
docs/reference/initializer_lecun_uniform.html | 8 +-
docs/reference/initializer_ones.html | 8 +-
docs/reference/initializer_orthogonal.html | 8 +-
docs/reference/initializer_random_normal.html | 8 +-
.../reference/initializer_random_uniform.html | 8 +-
.../initializer_truncated_normal.html | 8 +-
.../initializer_variance_scaling.html | 8 +-
docs/reference/initializer_zeros.html | 8 +-
docs/reference/install_keras.html | 8 +-
docs/reference/keras.html | 8 +-
docs/reference/keras3-package.html | 8 +-
docs/reference/keras_input.html | 8 +-
docs/reference/keras_model.html | 8 +-
docs/reference/keras_model_sequential.html | 8 +-
docs/reference/layer_activation.html | 8 +-
docs/reference/layer_activation_elu.html | 8 +-
.../layer_activation_leaky_relu.html | 8 +-
.../layer_activation_parametric_relu.html | 8 +-
docs/reference/layer_activation_relu.html | 8 +-
docs/reference/layer_activation_softmax.html | 8 +-
.../layer_activity_regularization.html | 8 +-
docs/reference/layer_add.html | 8 +-
docs/reference/layer_additive_attention.html | 8 +-
docs/reference/layer_alpha_dropout.html | 8 +-
docs/reference/layer_attention.html | 8 +-
docs/reference/layer_average.html | 8 +-
docs/reference/layer_average_pooling_1d.html | 8 +-
docs/reference/layer_average_pooling_2d.html | 8 +-
docs/reference/layer_average_pooling_3d.html | 8 +-
docs/reference/layer_batch_normalization.html | 8 +-
docs/reference/layer_bidirectional.html | 8 +-
docs/reference/layer_category_encoding.html | 8 +-
docs/reference/layer_center_crop.html | 8 +-
docs/reference/layer_concatenate.html | 8 +-
docs/reference/layer_conv_1d.html | 8 +-
docs/reference/layer_conv_1d_transpose.html | 8 +-
docs/reference/layer_conv_2d.html | 8 +-
docs/reference/layer_conv_2d_transpose.html | 8 +-
docs/reference/layer_conv_3d.html | 8 +-
docs/reference/layer_conv_3d_transpose.html | 8 +-
docs/reference/layer_conv_lstm_1d.html | 8 +-
docs/reference/layer_conv_lstm_2d.html | 8 +-
docs/reference/layer_conv_lstm_3d.html | 8 +-
docs/reference/layer_cropping_1d.html | 8 +-
docs/reference/layer_cropping_2d.html | 8 +-
docs/reference/layer_cropping_3d.html | 8 +-
docs/reference/layer_dense.html | 8 +-
docs/reference/layer_depthwise_conv_1d.html | 8 +-
docs/reference/layer_depthwise_conv_2d.html | 8 +-
docs/reference/layer_discretization.html | 8 +-
docs/reference/layer_dot.html | 8 +-
docs/reference/layer_dropout.html | 8 +-
docs/reference/layer_einsum_dense.html | 8 +-
docs/reference/layer_embedding.html | 15 +-
docs/reference/layer_feature_space.html | 8 +-
docs/reference/layer_flatten.html | 8 +-
docs/reference/layer_flax_module_wrapper.html | 8 +-
docs/reference/layer_gaussian_dropout.html | 8 +-
docs/reference/layer_gaussian_noise.html | 8 +-
.../layer_global_average_pooling_1d.html | 8 +-
.../layer_global_average_pooling_2d.html | 8 +-
.../layer_global_average_pooling_3d.html | 8 +-
.../layer_global_max_pooling_1d.html | 8 +-
.../layer_global_max_pooling_2d.html | 8 +-
.../layer_global_max_pooling_3d.html | 8 +-
docs/reference/layer_group_normalization.html | 8 +-
.../layer_group_query_attention.html | 8 +-
docs/reference/layer_gru.html | 8 +-
docs/reference/layer_hashed_crossing.html | 8 +-
docs/reference/layer_hashing.html | 8 +-
docs/reference/layer_identity.html | 8 +-
docs/reference/layer_input.html | 8 +-
docs/reference/layer_integer_lookup.html | 8 +-
docs/reference/layer_jax_model_wrapper.html | 8 +-
docs/reference/layer_lambda.html | 8 +-
docs/reference/layer_layer_normalization.html | 8 +-
docs/reference/layer_lstm.html | 8 +-
docs/reference/layer_masking.html | 8 +-
docs/reference/layer_max_pooling_1d.html | 8 +-
docs/reference/layer_max_pooling_2d.html | 8 +-
docs/reference/layer_max_pooling_3d.html | 8 +-
docs/reference/layer_maximum.html | 8 +-
docs/reference/layer_mel_spectrogram.html | 8 +-
docs/reference/layer_minimum.html | 8 +-
.../reference/layer_multi_head_attention.html | 8 +-
docs/reference/layer_multiply.html | 8 +-
docs/reference/layer_normalization.html | 8 +-
docs/reference/layer_permute.html | 8 +-
docs/reference/layer_random_brightness.html | 8 +-
docs/reference/layer_random_contrast.html | 8 +-
docs/reference/layer_random_crop.html | 8 +-
docs/reference/layer_random_flip.html | 8 +-
docs/reference/layer_random_rotation.html | 8 +-
docs/reference/layer_random_translation.html | 8 +-
docs/reference/layer_random_zoom.html | 10 +-
docs/reference/layer_repeat_vector.html | 8 +-
docs/reference/layer_rescaling.html | 8 +-
docs/reference/layer_reshape.html | 8 +-
docs/reference/layer_resizing.html | 29 ++-
docs/reference/layer_rnn.html | 8 +-
docs/reference/layer_separable_conv_1d.html | 8 +-
docs/reference/layer_separable_conv_2d.html | 8 +-
docs/reference/layer_simple_rnn.html | 8 +-
docs/reference/layer_spatial_dropout_1d.html | 8 +-
docs/reference/layer_spatial_dropout_2d.html | 8 +-
docs/reference/layer_spatial_dropout_3d.html | 8 +-
.../layer_spectral_normalization.html | 8 +-
docs/reference/layer_string_lookup.html | 8 +-
docs/reference/layer_subtract.html | 8 +-
docs/reference/layer_text_vectorization.html | 8 +-
docs/reference/layer_tfsm.html | 12 +-
docs/reference/layer_time_distributed.html | 8 +-
.../reference/layer_torch_module_wrapper.html | 8 +-
docs/reference/layer_unit_normalization.html | 8 +-
docs/reference/layer_upsampling_1d.html | 8 +-
docs/reference/layer_upsampling_2d.html | 8 +-
docs/reference/layer_upsampling_3d.html | 8 +-
docs/reference/layer_zero_padding_1d.html | 8 +-
docs/reference/layer_zero_padding_2d.html | 8 +-
docs/reference/layer_zero_padding_3d.html | 8 +-
.../learning_rate_schedule_cosine_decay.html | 8 +-
...g_rate_schedule_cosine_decay_restarts.html | 8 +-
...rning_rate_schedule_exponential_decay.html | 8 +-
...ning_rate_schedule_inverse_time_decay.html | 8 +-
...ate_schedule_piecewise_constant_decay.html | 8 +-
...arning_rate_schedule_polynomial_decay.html | 8 +-
docs/reference/load_model.html | 8 +-
docs/reference/load_model_weights.html | 8 +-
docs/reference/loss_binary_crossentropy.html | 10 +-
.../loss_binary_focal_crossentropy.html | 10 +-
.../loss_categorical_crossentropy.html | 10 +-
.../loss_categorical_focal_crossentropy.html | 10 +-
docs/reference/loss_categorical_hinge.html | 10 +-
docs/reference/loss_cosine_similarity.html | 10 +-
docs/reference/loss_ctc.html | 12 +-
docs/reference/loss_dice.html | 10 +-
docs/reference/loss_hinge.html | 10 +-
docs/reference/loss_huber.html | 10 +-
docs/reference/loss_kl_divergence.html | 21 ++-
docs/reference/loss_log_cosh.html | 10 +-
docs/reference/loss_mean_absolute_error.html | 10 +-
.../loss_mean_absolute_percentage_error.html | 10 +-
docs/reference/loss_mean_squared_error.html | 10 +-
.../loss_mean_squared_logarithmic_error.html | 10 +-
docs/reference/loss_poisson.html | 10 +-
.../loss_sparse_categorical_crossentropy.html | 10 +-
docs/reference/loss_squared_hinge.html | 10 +-
docs/reference/loss_tversky.html | 178 ++++++++++++++++++
docs/reference/mark_active.html | 8 +-
docs/reference/metric_auc.html | 8 +-
docs/reference/metric_binary_accuracy.html | 8 +-
.../reference/metric_binary_crossentropy.html | 10 +-
.../metric_binary_focal_crossentropy.html | 10 +-
docs/reference/metric_binary_iou.html | 8 +-
.../metric_categorical_accuracy.html | 8 +-
.../metric_categorical_crossentropy.html | 10 +-
...metric_categorical_focal_crossentropy.html | 10 +-
docs/reference/metric_categorical_hinge.html | 10 +-
docs/reference/metric_cosine_similarity.html | 8 +-
docs/reference/metric_f1_score.html | 8 +-
docs/reference/metric_false_negatives.html | 8 +-
docs/reference/metric_false_positives.html | 8 +-
docs/reference/metric_fbeta_score.html | 8 +-
docs/reference/metric_hinge.html | 10 +-
docs/reference/metric_huber.html | 10 +-
docs/reference/metric_iou.html | 8 +-
docs/reference/metric_kl_divergence.html | 21 ++-
docs/reference/metric_log_cosh.html | 10 +-
docs/reference/metric_log_cosh_error.html | 8 +-
docs/reference/metric_mean.html | 8 +-
.../reference/metric_mean_absolute_error.html | 10 +-
...metric_mean_absolute_percentage_error.html | 10 +-
docs/reference/metric_mean_iou.html | 8 +-
docs/reference/metric_mean_squared_error.html | 10 +-
...metric_mean_squared_logarithmic_error.html | 10 +-
docs/reference/metric_mean_wrapper.html | 8 +-
docs/reference/metric_one_hot_iou.html | 8 +-
docs/reference/metric_one_hot_mean_iou.html | 8 +-
docs/reference/metric_poisson.html | 10 +-
docs/reference/metric_precision.html | 8 +-
.../reference/metric_precision_at_recall.html | 8 +-
docs/reference/metric_r2_score.html | 8 +-
docs/reference/metric_recall.html | 8 +-
.../reference/metric_recall_at_precision.html | 8 +-
.../metric_root_mean_squared_error.html | 8 +-
.../metric_sensitivity_at_specificity.html | 8 +-
.../metric_sparse_categorical_accuracy.html | 8 +-
...etric_sparse_categorical_crossentropy.html | 10 +-
...ric_sparse_top_k_categorical_accuracy.html | 8 +-
.../metric_specificity_at_sensitivity.html | 8 +-
docs/reference/metric_squared_hinge.html | 10 +-
docs/reference/metric_sum.html | 8 +-
.../metric_top_k_categorical_accuracy.html | 8 +-
docs/reference/metric_true_negatives.html | 8 +-
docs/reference/metric_true_positives.html | 8 +-
docs/reference/multi-assign.html | 8 +-
docs/reference/new_callback_class.html | 8 +-
docs/reference/new_layer_class.html | 8 +-
.../new_learning_rate_schedule_class.html | 8 +-
docs/reference/new_loss_class.html | 8 +-
docs/reference/new_metric_class.html | 8 +-
docs/reference/new_model_class.html | 8 +-
docs/reference/normalize.html | 8 +-
docs/reference/op_abs.html | 12 +-
docs/reference/op_add.html | 12 +-
docs/reference/op_all.html | 14 +-
docs/reference/op_any.html | 12 +-
docs/reference/op_append.html | 12 +-
docs/reference/op_arange.html | 12 +-
docs/reference/op_arccos.html | 12 +-
docs/reference/op_arccosh.html | 12 +-
docs/reference/op_arcsin.html | 12 +-
docs/reference/op_arcsinh.html | 12 +-
docs/reference/op_arctan.html | 12 +-
docs/reference/op_arctan2.html | 12 +-
docs/reference/op_arctanh.html | 12 +-
docs/reference/op_argmax.html | 19 +-
docs/reference/op_argmin.html | 19 +-
docs/reference/op_argsort.html | 12 +-
docs/reference/op_array.html | 12 +-
docs/reference/op_average.html | 21 +--
docs/reference/op_average_pool.html | 10 +-
docs/reference/op_batch_normalization.html | 10 +-
docs/reference/op_binary_crossentropy.html | 10 +-
docs/reference/op_bincount.html | 12 +-
docs/reference/op_broadcast_to.html | 12 +-
docs/reference/op_cast.html | 10 +-
.../op_categorical_crossentropy.html | 10 +-
docs/reference/op_ceil.html | 12 +-
docs/reference/op_cholesky.html | 12 +-
docs/reference/op_clip.html | 12 +-
docs/reference/op_concatenate.html | 12 +-
docs/reference/op_cond.html | 10 +-
docs/reference/op_conj.html | 12 +-
docs/reference/op_conv.html | 10 +-
docs/reference/op_conv_transpose.html | 10 +-
docs/reference/op_convert_to_numpy.html | 10 +-
docs/reference/op_convert_to_tensor.html | 10 +-
docs/reference/op_copy.html | 12 +-
docs/reference/op_correlate.html | 12 +-
docs/reference/op_cos.html | 12 +-
docs/reference/op_cosh.html | 12 +-
docs/reference/op_count_nonzero.html | 12 +-
docs/reference/op_cross.html | 12 +-
docs/reference/op_ctc_decode.html | 161 ++++++++++++++++
docs/reference/op_ctc_loss.html | 10 +-
docs/reference/op_cumprod.html | 12 +-
docs/reference/op_cumsum.html | 12 +-
docs/reference/op_custom_gradient.html | 10 +-
docs/reference/op_depthwise_conv.html | 10 +-
docs/reference/op_det.html | 12 +-
docs/reference/op_diag.html | 12 +-
docs/reference/op_diagonal.html | 12 +-
docs/reference/op_diff.html | 12 +-
docs/reference/op_digitize.html | 12 +-
docs/reference/op_divide.html | 12 +-
docs/reference/op_divide_no_nan.html | 12 +-
docs/reference/op_dot.html | 12 +-
docs/reference/op_eig.html | 12 +-
docs/reference/op_eigh.html | 120 ++++++++++++
docs/reference/op_einsum.html | 12 +-
docs/reference/op_elu.html | 10 +-
docs/reference/op_empty.html | 12 +-
docs/reference/op_equal.html | 12 +-
docs/reference/op_erf.html | 10 +-
docs/reference/op_erfinv.html | 10 +-
docs/reference/op_exp.html | 12 +-
docs/reference/op_expand_dims.html | 12 +-
docs/reference/op_expm1.html | 12 +-
docs/reference/op_extract_sequences.html | 10 +-
docs/reference/op_eye.html | 12 +-
docs/reference/op_fft.html | 10 +-
docs/reference/op_fft2.html | 10 +-
docs/reference/op_flip.html | 12 +-
docs/reference/op_floor.html | 12 +-
docs/reference/op_floor_divide.html | 12 +-
docs/reference/op_fori_loop.html | 10 +-
docs/reference/op_full.html | 12 +-
docs/reference/op_full_like.html | 12 +-
docs/reference/op_gelu.html | 10 +-
docs/reference/op_get_item.html | 12 +-
docs/reference/op_greater.html | 12 +-
docs/reference/op_greater_equal.html | 12 +-
docs/reference/op_hard_sigmoid.html | 10 +-
docs/reference/op_hard_silu.html | 10 +-
docs/reference/op_hstack.html | 12 +-
docs/reference/op_identity.html | 12 +-
docs/reference/op_imag.html | 12 +-
docs/reference/op_image_affine_transform.html | 14 +-
docs/reference/op_image_crop.html | 14 +-
docs/reference/op_image_extract_patches.html | 14 +-
docs/reference/op_image_map_coordinates.html | 14 +-
docs/reference/op_image_pad.html | 14 +-
docs/reference/op_image_resize.html | 46 ++++-
docs/reference/op_image_rgb_to_grayscale.html | 152 +++++++++++++++
docs/reference/op_in_top_k.html | 10 +-
docs/reference/op_inv.html | 12 +-
docs/reference/op_irfft.html | 10 +-
docs/reference/op_is_tensor.html | 10 +-
docs/reference/op_isclose.html | 12 +-
docs/reference/op_isfinite.html | 12 +-
docs/reference/op_isinf.html | 12 +-
docs/reference/op_isnan.html | 12 +-
docs/reference/op_istft.html | 10 +-
docs/reference/op_leaky_relu.html | 10 +-
docs/reference/op_less.html | 12 +-
docs/reference/op_less_equal.html | 12 +-
docs/reference/op_linspace.html | 14 +-
docs/reference/op_log.html | 12 +-
docs/reference/op_log10.html | 12 +-
docs/reference/op_log1p.html | 12 +-
docs/reference/op_log2.html | 12 +-
docs/reference/op_log_sigmoid.html | 10 +-
docs/reference/op_log_softmax.html | 10 +-
docs/reference/op_logaddexp.html | 12 +-
docs/reference/op_logical_and.html | 12 +-
docs/reference/op_logical_not.html | 12 +-
docs/reference/op_logical_or.html | 12 +-
docs/reference/op_logical_xor.html | 12 +-
docs/reference/op_logspace.html | 14 +-
docs/reference/op_logsumexp.html | 10 +-
docs/reference/op_lu_factor.html | 12 +-
docs/reference/op_matmul.html | 12 +-
docs/reference/op_max.html | 16 +-
docs/reference/op_max_pool.html | 10 +-
docs/reference/op_maximum.html | 12 +-
docs/reference/op_mean.html | 12 +-
docs/reference/op_median.html | 12 +-
docs/reference/op_meshgrid.html | 12 +-
docs/reference/op_min.html | 16 +-
docs/reference/op_minimum.html | 12 +-
docs/reference/op_mod.html | 12 +-
docs/reference/op_moments.html | 10 +-
docs/reference/op_moveaxis.html | 12 +-
docs/reference/op_multi_hot.html | 10 +-
docs/reference/op_multiply.html | 12 +-
docs/reference/op_nan_to_num.html | 38 +++-
docs/reference/op_ndim.html | 12 +-
docs/reference/op_negative.html | 12 +-
docs/reference/op_nonzero.html | 12 +-
docs/reference/op_norm.html | 12 +-
docs/reference/op_normalize.html | 10 +-
docs/reference/op_not_equal.html | 12 +-
docs/reference/op_one_hot.html | 10 +-
docs/reference/op_ones.html | 12 +-
docs/reference/op_ones_like.html | 12 +-
docs/reference/op_outer.html | 12 +-
docs/reference/op_pad.html | 12 +-
docs/reference/op_power.html | 12 +-
docs/reference/op_prod.html | 12 +-
docs/reference/op_qr.html | 10 +-
docs/reference/op_quantile.html | 12 +-
docs/reference/op_ravel.html | 12 +-
docs/reference/op_real.html | 12 +-
docs/reference/op_reciprocal.html | 12 +-
docs/reference/op_relu.html | 10 +-
docs/reference/op_relu6.html | 10 +-
docs/reference/op_repeat.html | 12 +-
docs/reference/op_reshape.html | 12 +-
docs/reference/op_rfft.html | 10 +-
docs/reference/op_roll.html | 12 +-
docs/reference/op_round.html | 12 +-
docs/reference/op_rsqrt.html | 10 +-
docs/reference/op_scatter.html | 10 +-
docs/reference/op_scatter_update.html | 10 +-
docs/reference/op_segment_max.html | 10 +-
docs/reference/op_segment_sum.html | 10 +-
docs/reference/op_select.html | 146 ++++++++++++++
docs/reference/op_selu.html | 10 +-
docs/reference/op_separable_conv.html | 10 +-
docs/reference/op_shape.html | 10 +-
docs/reference/op_sigmoid.html | 10 +-
docs/reference/op_sign.html | 12 +-
docs/reference/op_silu.html | 10 +-
docs/reference/op_sin.html | 12 +-
docs/reference/op_sinh.html | 12 +-
docs/reference/op_size.html | 12 +-
docs/reference/op_slice.html | 10 +-
docs/reference/op_slice_update.html | 10 +-
docs/reference/op_softmax.html | 10 +-
docs/reference/op_softplus.html | 10 +-
docs/reference/op_softsign.html | 10 +-
docs/reference/op_solve.html | 10 +-
docs/reference/op_solve_triangular.html | 12 +-
docs/reference/op_sort.html | 12 +-
.../op_sparse_categorical_crossentropy.html | 10 +-
docs/reference/op_split.html | 12 +-
docs/reference/op_sqrt.html | 12 +-
docs/reference/op_square.html | 12 +-
docs/reference/op_squeeze.html | 12 +-
docs/reference/op_stack.html | 12 +-
docs/reference/op_std.html | 12 +-
docs/reference/op_stft.html | 10 +-
docs/reference/op_stop_gradient.html | 10 +-
docs/reference/op_subtract.html | 12 +-
docs/reference/op_sum.html | 12 +-
docs/reference/op_svd.html | 12 +-
docs/reference/op_swapaxes.html | 12 +-
docs/reference/op_take.html | 12 +-
docs/reference/op_take_along_axis.html | 12 +-
docs/reference/op_tan.html | 12 +-
docs/reference/op_tanh.html | 12 +-
docs/reference/op_tensordot.html | 12 +-
docs/reference/op_tile.html | 12 +-
docs/reference/op_top_k.html | 10 +-
docs/reference/op_trace.html | 12 +-
docs/reference/op_transpose.html | 12 +-
docs/reference/op_tri.html | 12 +-
docs/reference/op_tril.html | 12 +-
docs/reference/op_triu.html | 12 +-
docs/reference/op_unstack.html | 10 +-
docs/reference/op_var.html | 12 +-
docs/reference/op_vdot.html | 12 +-
docs/reference/op_vectorize.html | 155 +++++++++++++++
docs/reference/op_vectorized_map.html | 10 +-
docs/reference/op_vstack.html | 12 +-
docs/reference/op_where.html | 12 +-
docs/reference/op_while_loop.html | 10 +-
docs/reference/op_zeros.html | 12 +-
docs/reference/op_zeros_like.html | 12 +-
docs/reference/optimizer_adadelta.html | 8 +-
docs/reference/optimizer_adafactor.html | 8 +-
docs/reference/optimizer_adagrad.html | 8 +-
docs/reference/optimizer_adam.html | 8 +-
docs/reference/optimizer_adam_w.html | 8 +-
docs/reference/optimizer_adamax.html | 8 +-
docs/reference/optimizer_ftrl.html | 8 +-
docs/reference/optimizer_lion.html | 8 +-
docs/reference/optimizer_loss_scale.html | 8 +-
docs/reference/optimizer_nadam.html | 8 +-
docs/reference/optimizer_rmsprop.html | 10 +-
docs/reference/optimizer_sgd.html | 8 +-
docs/reference/pack_x_y_sample_weight.html | 8 +-
docs/reference/pad_sequences.html | 8 +-
docs/reference/pipe.html | 8 +-
.../plot.keras.src.models.model.Model.html | 8 +-
.../plot.keras_training_history.html | 8 +-
docs/reference/pop_layer.html | 8 +-
.../predict.keras.src.models.model.Model.html | 8 +-
docs/reference/predict_on_batch.html | 8 +-
docs/reference/process_utils.html | 8 +-
docs/reference/quantize_weights.html | 8 +-
docs/reference/random_beta.html | 8 +-
docs/reference/random_binomial.html | 8 +-
docs/reference/random_categorical.html | 8 +-
docs/reference/random_dropout.html | 8 +-
docs/reference/random_gamma.html | 8 +-
docs/reference/random_integer.html | 8 +-
docs/reference/random_normal.html | 8 +-
docs/reference/random_seed_generator.html | 14 +-
docs/reference/random_shuffle.html | 8 +-
docs/reference/random_truncated_normal.html | 8 +-
docs/reference/random_uniform.html | 8 +-
docs/reference/reexports.html | 8 +-
.../register_keras_serializable.html | 8 +-
docs/reference/regularizer_l1.html | 8 +-
docs/reference/regularizer_l1_l2.html | 8 +-
docs/reference/regularizer_l2.html | 8 +-
docs/reference/regularizer_orthogonal.html | 8 +-
docs/reference/reset_state.html | 8 +-
docs/reference/rnn_cell_gru.html | 8 +-
docs/reference/rnn_cell_lstm.html | 8 +-
docs/reference/rnn_cell_simple.html | 8 +-
docs/reference/rnn_cells_stack.html | 8 +-
docs/reference/save_model.html | 8 +-
docs/reference/save_model_config.html | 8 +-
docs/reference/save_model_weights.html | 8 +-
docs/reference/serialize_keras_object.html | 8 +-
docs/reference/set_random_seed.html | 8 +-
docs/reference/shape.html | 8 +-
docs/reference/split_dataset.html | 8 +-
.../summary.keras.src.models.model.Model.html | 8 +-
docs/reference/test_on_batch.html | 8 +-
.../text_dataset_from_directory.html | 8 +-
docs/reference/time_distributed.html | 8 +-
.../timeseries_dataset_from_array.html | 8 +-
docs/reference/to_categorical.html | 8 +-
docs/reference/train_on_batch.html | 8 +-
docs/reference/unpack_x_y_sample_weight.html | 8 +-
docs/reference/use_backend.html | 8 +-
docs/reference/with_custom_object_scope.html | 8 +-
docs/reference/zip_lists.html | 8 +-
docs/search.json | 2 +-
docs/sitemap.xml | 24 +++
660 files changed, 4406 insertions(+), 3084 deletions(-)
create mode 100644 docs/reference/imagenet_decode_predictions.html
create mode 100644 docs/reference/imagenet_preprocess_input.html
create mode 100644 docs/reference/loss_tversky.html
create mode 100644 docs/reference/op_ctc_decode.html
create mode 100644 docs/reference/op_eigh.html
create mode 100644 docs/reference/op_image_rgb_to_grayscale.html
create mode 100644 docs/reference/op_select.html
create mode 100644 docs/reference/op_vectorize.html
diff --git a/docs/404.html b/docs/404.html
index 273859b60..be1d0c17e 100644
--- a/docs/404.html
+++ b/docs/404.html
@@ -16,7 +16,7 @@
-
+
License • keras3 License • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -77,11 +77,11 @@
diff --git a/docs/articles/custom_train_step_in_tensorflow.html b/docs/articles/custom_train_step_in_tensorflow.html
index d31cf22af..461a40d5d 100644
--- a/docs/articles/custom_train_step_in_tensorflow.html
+++ b/docs/articles/custom_train_step_in_tensorflow.html
@@ -17,7 +17,7 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Articles • keras3 Articles • keras3
@@ -10,7 +10,7 @@
keras3
-
0.1.0.9000
+
0.2.0.9000
@@ -70,7 +70,7 @@
diff --git a/docs/articles/intro_to_keras_for_engineers.html b/docs/articles/intro_to_keras_for_engineers.html
index d84e6e083..5604ea80f 100644
--- a/docs/articles/intro_to_keras_for_engineers.html
+++ b/docs/articles/intro_to_keras_for_engineers.html
@@ -17,7 +17,7 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Authors and Citation • keras3 Authors and Citation • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -119,13 +119,13 @@ Citation
Kalinowski T, Allaire J, Chollet F (2024).
keras3: R Interface to 'Keras' .
-R package version 0.1.0.9000, https://github.com/rstudio/keras, https://keras.posit.co/ .
+R package version 0.2.0.9000, https://github.com/rstudio/keras, https://keras.posit.co/ .
@Manual{,
title = {keras3: R Interface to 'Keras'},
author = {Tomasz Kalinowski and JJ Allaire and François Chollet},
year = {2024},
- note = {R package version 0.1.0.9000, https://github.com/rstudio/keras},
+ note = {R package version 0.2.0.9000, https://github.com/rstudio/keras},
url = {https://keras.posit.co/},
}
@@ -134,11 +134,11 @@ Citation
diff --git a/docs/deps/bootstrap-5.3.1/bootstrap.min.css b/docs/deps/bootstrap-5.3.1/bootstrap.min.css
index 1534e91df..1996130f7 100644
--- a/docs/deps/bootstrap-5.3.1/bootstrap.min.css
+++ b/docs/deps/bootstrap-5.3.1/bootstrap.min.css
@@ -2,4 +2,4 @@
* Bootstrap v5.3.1 (https://getbootstrap.com/)
* Copyright 2011-2023 The Bootstrap Authors
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
- */:root,[data-bs-theme="light"]{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-default: #dee2e6;--bs-primary: #BF281B;--bs-secondary: #6c757d;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #f8f9fa;--bs-dark: #212529;--bs-default-rgb: 222,226,230;--bs-primary-rgb: 191,40,27;--bs-secondary-rgb: 108,117,125;--bs-success-rgb: 25,135,84;--bs-info-rgb: 13,202,240;--bs-warning-rgb: 255,193,7;--bs-danger-rgb: 220,53,69;--bs-light-rgb: 248,249,250;--bs-dark-rgb: 33,37,41;--bs-primary-text-emphasis: #4c100b;--bs-secondary-text-emphasis: #2b2f32;--bs-success-text-emphasis: #0a3622;--bs-info-text-emphasis: #055160;--bs-warning-text-emphasis: #664d03;--bs-danger-text-emphasis: #58151c;--bs-light-text-emphasis: #495057;--bs-dark-text-emphasis: #495057;--bs-primary-bg-subtle: #f2d4d1;--bs-secondary-bg-subtle: #e2e3e5;--bs-success-bg-subtle: #d1e7dd;--bs-info-bg-subtle: #cff4fc;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #f8d7da;--bs-light-bg-subtle: #fcfcfd;--bs-dark-bg-subtle: #ced4da;--bs-primary-border-subtle: #e5a9a4;--bs-secondary-border-subtle: #c4c8cb;--bs-success-border-subtle: #a3cfbb;--bs-info-border-subtle: #9eeaf9;--bs-warning-border-subtle: #ffe69c;--bs-danger-border-subtle: #f1aeb5;--bs-light-border-subtle: #e9ecef;--bs-dark-border-subtle: #adb5bd;--bs-white-rgb: 255,255,255;--bs-black-rgb: 0,0,0;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: monospace;--bs-gradient: linear-gradient(180deg, rgba(255,255,255,0.15), rgba(255,255,255,0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #212529;--bs-body-color-rgb: 33,37,41;--bs-body-bg: #fff;--bs-body-bg-rgb: 255,255,255;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0,0,0;--bs-secondary-color: rgba(33,37,41,0.75);--bs-secondary-color-rgb: 33,37,41;--bs-secondary-bg: #e9ecef;--bs-secondary-bg-rgb: 233,236,239;--bs-tertiary-color: rgba(33,37,41,0.5);--bs-tertiary-color-rgb: 33,37,41;--bs-tertiary-bg: #f8f9fa;--bs-tertiary-bg-rgb: 248,249,250;--bs-heading-color: inherit;--bs-link-color: #BF281B;--bs-link-color-rgb: 191,40,27;--bs-link-decoration: underline;--bs-link-hover-color: #992016;--bs-link-hover-color-rgb: 153,32,22;--bs-code-color: RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));--bs-highlight-bg: #fff3cd;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #dee2e6;--bs-border-color-translucent: rgba(0,0,0,0.175);--bs-border-radius: .375rem;--bs-border-radius-sm: .25rem;--bs-border-radius-lg: .5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15);--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-box-shadow-lg: 0 1rem 3rem rgba(0,0,0,0.175);--bs-box-shadow-inset: inset 0 1px 2px rgba(0,0,0,0.075);--bs-focus-ring-width: .25rem;--bs-focus-ring-opacity: .25;--bs-focus-ring-color: rgba(191,40,27,0.25);--bs-form-valid-color: #198754;--bs-form-valid-border-color: #198754;--bs-form-invalid-color: #dc3545;--bs-form-invalid-border-color: #dc3545}[data-bs-theme="dark"]{color-scheme:dark;--bs-body-color: #dee2e6;--bs-body-color-rgb: 222,226,230;--bs-body-bg: #212529;--bs-body-bg-rgb: 33,37,41;--bs-emphasis-color: #fff;--bs-emphasis-color-rgb: 255,255,255;--bs-secondary-color: rgba(222,226,230,0.75);--bs-secondary-color-rgb: 222,226,230;--bs-secondary-bg: #343a40;--bs-secondary-bg-rgb: 52,58,64;--bs-tertiary-color: rgba(222,226,230,0.5);--bs-tertiary-color-rgb: 222,226,230;--bs-tertiary-bg: #2b3035;--bs-tertiary-bg-rgb: 43,48,53;--bs-primary-text-emphasis: #d97e76;--bs-secondary-text-emphasis: #a7acb1;--bs-success-text-emphasis: #75b798;--bs-info-text-emphasis: #6edff6;--bs-warning-text-emphasis: #ffda6a;--bs-danger-text-emphasis: #ea868f;--bs-light-text-emphasis: #f8f9fa;--bs-dark-text-emphasis: #dee2e6;--bs-primary-bg-subtle: #260805;--bs-secondary-bg-subtle: #161719;--bs-success-bg-subtle: #051b11;--bs-info-bg-subtle: #032830;--bs-warning-bg-subtle: #332701;--bs-danger-bg-subtle: #2c0b0e;--bs-light-bg-subtle: #343a40;--bs-dark-bg-subtle: #1a1d20;--bs-primary-border-subtle: #731810;--bs-secondary-border-subtle: #41464b;--bs-success-border-subtle: #0f5132;--bs-info-border-subtle: #087990;--bs-warning-border-subtle: #997404;--bs-danger-border-subtle: #842029;--bs-light-border-subtle: #495057;--bs-dark-border-subtle: #343a40;--bs-heading-color: inherit;--bs-link-color: #d97e76;--bs-link-hover-color: #e19891;--bs-link-color-rgb: 217,126,118;--bs-link-hover-color-rgb: 225,152,145;--bs-code-color: RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));--bs-border-color: #495057;--bs-border-color-translucent: rgba(255,255,255,0.15);--bs-form-valid-color: #75b798;--bs-form-valid-border-color: #75b798;--bs-form-invalid-color: #ea868f;--bs-form-invalid-border-color: #ea868f}*,*::before,*::after{box-sizing:border-box}@media (prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}h1,.h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width: 1200px){h1,.h1{font-size:2.5rem}}h2,.h2{font-size:calc(1.325rem + .9vw)}@media (min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + .6vw)}@media (min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + .3vw)}@media (min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;-ms-text-decoration:underline dotted;-o-text-decoration:underline dotted;cursor:help;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem;padding:.625rem 1.25rem;border-left:.25rem solid #e9ecef}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}b,strong{font-weight:bolder}small,.small{font-size:.875em}mark,.mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em;color:RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));background-color:RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.04);padding:.5rem;border:1px solid var(--bs-border-color, #dee2e6);border-radius:.375rem}pre code{background-color:transparent;font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);background-color:RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.04);border-radius:.375rem;padding:.125rem .25rem;word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role="button"]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type="date"]):not([type="datetime-local"]):not([type="month"]):not([type="week"]):not([type="time"])::-webkit-calendar-picker-indicator{display:none !important}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button:not(:disabled),[type="button"]:not(:disabled),[type="reset"]:not(:disabled),[type="submit"]:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width: 1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){.container-sm,.container{max-width:540px}}@media (min-width: 768px){.container-md,.container-sm,.container{max-width:720px}}@media (min-width: 992px){.container-lg,.container-md,.container-sm,.container{max-width:960px}}@media (min-width: 1200px){.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1140px}}@media (min-width: 1400px){.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1320px}}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;-webkit-flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.grid{display:grid;grid-template-rows:repeat(var(--bs-rows, 1), 1fr);grid-template-columns:repeat(var(--bs-columns, 12), 1fr);gap:var(--bs-gap, 1.5rem)}.grid .g-col-1{grid-column:auto/span 1}.grid .g-col-2{grid-column:auto/span 2}.grid .g-col-3{grid-column:auto/span 3}.grid .g-col-4{grid-column:auto/span 4}.grid .g-col-5{grid-column:auto/span 5}.grid .g-col-6{grid-column:auto/span 6}.grid .g-col-7{grid-column:auto/span 7}.grid .g-col-8{grid-column:auto/span 8}.grid .g-col-9{grid-column:auto/span 9}.grid .g-col-10{grid-column:auto/span 10}.grid .g-col-11{grid-column:auto/span 11}.grid .g-col-12{grid-column:auto/span 12}.grid .g-start-1{grid-column-start:1}.grid .g-start-2{grid-column-start:2}.grid .g-start-3{grid-column-start:3}.grid .g-start-4{grid-column-start:4}.grid .g-start-5{grid-column-start:5}.grid .g-start-6{grid-column-start:6}.grid .g-start-7{grid-column-start:7}.grid .g-start-8{grid-column-start:8}.grid .g-start-9{grid-column-start:9}.grid .g-start-10{grid-column-start:10}.grid .g-start-11{grid-column-start:11}@media (min-width: 576px){.grid .g-col-sm-1{grid-column:auto/span 1}.grid .g-col-sm-2{grid-column:auto/span 2}.grid .g-col-sm-3{grid-column:auto/span 3}.grid .g-col-sm-4{grid-column:auto/span 4}.grid .g-col-sm-5{grid-column:auto/span 5}.grid .g-col-sm-6{grid-column:auto/span 6}.grid .g-col-sm-7{grid-column:auto/span 7}.grid .g-col-sm-8{grid-column:auto/span 8}.grid .g-col-sm-9{grid-column:auto/span 9}.grid .g-col-sm-10{grid-column:auto/span 10}.grid .g-col-sm-11{grid-column:auto/span 11}.grid .g-col-sm-12{grid-column:auto/span 12}.grid .g-start-sm-1{grid-column-start:1}.grid .g-start-sm-2{grid-column-start:2}.grid .g-start-sm-3{grid-column-start:3}.grid .g-start-sm-4{grid-column-start:4}.grid .g-start-sm-5{grid-column-start:5}.grid .g-start-sm-6{grid-column-start:6}.grid .g-start-sm-7{grid-column-start:7}.grid .g-start-sm-8{grid-column-start:8}.grid .g-start-sm-9{grid-column-start:9}.grid .g-start-sm-10{grid-column-start:10}.grid .g-start-sm-11{grid-column-start:11}}@media (min-width: 768px){.grid .g-col-md-1{grid-column:auto/span 1}.grid .g-col-md-2{grid-column:auto/span 2}.grid .g-col-md-3{grid-column:auto/span 3}.grid .g-col-md-4{grid-column:auto/span 4}.grid .g-col-md-5{grid-column:auto/span 5}.grid .g-col-md-6{grid-column:auto/span 6}.grid .g-col-md-7{grid-column:auto/span 7}.grid .g-col-md-8{grid-column:auto/span 8}.grid .g-col-md-9{grid-column:auto/span 9}.grid .g-col-md-10{grid-column:auto/span 10}.grid .g-col-md-11{grid-column:auto/span 11}.grid .g-col-md-12{grid-column:auto/span 12}.grid .g-start-md-1{grid-column-start:1}.grid .g-start-md-2{grid-column-start:2}.grid .g-start-md-3{grid-column-start:3}.grid .g-start-md-4{grid-column-start:4}.grid .g-start-md-5{grid-column-start:5}.grid .g-start-md-6{grid-column-start:6}.grid .g-start-md-7{grid-column-start:7}.grid .g-start-md-8{grid-column-start:8}.grid .g-start-md-9{grid-column-start:9}.grid .g-start-md-10{grid-column-start:10}.grid .g-start-md-11{grid-column-start:11}}@media (min-width: 992px){.grid .g-col-lg-1{grid-column:auto/span 1}.grid .g-col-lg-2{grid-column:auto/span 2}.grid .g-col-lg-3{grid-column:auto/span 3}.grid .g-col-lg-4{grid-column:auto/span 4}.grid .g-col-lg-5{grid-column:auto/span 5}.grid .g-col-lg-6{grid-column:auto/span 6}.grid .g-col-lg-7{grid-column:auto/span 7}.grid .g-col-lg-8{grid-column:auto/span 8}.grid .g-col-lg-9{grid-column:auto/span 9}.grid .g-col-lg-10{grid-column:auto/span 10}.grid .g-col-lg-11{grid-column:auto/span 11}.grid .g-col-lg-12{grid-column:auto/span 12}.grid .g-start-lg-1{grid-column-start:1}.grid .g-start-lg-2{grid-column-start:2}.grid .g-start-lg-3{grid-column-start:3}.grid .g-start-lg-4{grid-column-start:4}.grid .g-start-lg-5{grid-column-start:5}.grid .g-start-lg-6{grid-column-start:6}.grid .g-start-lg-7{grid-column-start:7}.grid .g-start-lg-8{grid-column-start:8}.grid .g-start-lg-9{grid-column-start:9}.grid .g-start-lg-10{grid-column-start:10}.grid .g-start-lg-11{grid-column-start:11}}@media (min-width: 1200px){.grid .g-col-xl-1{grid-column:auto/span 1}.grid .g-col-xl-2{grid-column:auto/span 2}.grid .g-col-xl-3{grid-column:auto/span 3}.grid .g-col-xl-4{grid-column:auto/span 4}.grid .g-col-xl-5{grid-column:auto/span 5}.grid .g-col-xl-6{grid-column:auto/span 6}.grid .g-col-xl-7{grid-column:auto/span 7}.grid .g-col-xl-8{grid-column:auto/span 8}.grid .g-col-xl-9{grid-column:auto/span 9}.grid .g-col-xl-10{grid-column:auto/span 10}.grid .g-col-xl-11{grid-column:auto/span 11}.grid .g-col-xl-12{grid-column:auto/span 12}.grid .g-start-xl-1{grid-column-start:1}.grid .g-start-xl-2{grid-column-start:2}.grid .g-start-xl-3{grid-column-start:3}.grid .g-start-xl-4{grid-column-start:4}.grid .g-start-xl-5{grid-column-start:5}.grid .g-start-xl-6{grid-column-start:6}.grid .g-start-xl-7{grid-column-start:7}.grid .g-start-xl-8{grid-column-start:8}.grid .g-start-xl-9{grid-column-start:9}.grid .g-start-xl-10{grid-column-start:10}.grid .g-start-xl-11{grid-column-start:11}}@media (min-width: 1400px){.grid .g-col-xxl-1{grid-column:auto/span 1}.grid .g-col-xxl-2{grid-column:auto/span 2}.grid .g-col-xxl-3{grid-column:auto/span 3}.grid .g-col-xxl-4{grid-column:auto/span 4}.grid .g-col-xxl-5{grid-column:auto/span 5}.grid .g-col-xxl-6{grid-column:auto/span 6}.grid .g-col-xxl-7{grid-column:auto/span 7}.grid .g-col-xxl-8{grid-column:auto/span 8}.grid .g-col-xxl-9{grid-column:auto/span 9}.grid .g-col-xxl-10{grid-column:auto/span 10}.grid .g-col-xxl-11{grid-column:auto/span 11}.grid .g-col-xxl-12{grid-column:auto/span 12}.grid .g-start-xxl-1{grid-column-start:1}.grid .g-start-xxl-2{grid-column-start:2}.grid .g-start-xxl-3{grid-column-start:3}.grid .g-start-xxl-4{grid-column-start:4}.grid .g-start-xxl-5{grid-column-start:5}.grid .g-start-xxl-6{grid-column-start:6}.grid .g-start-xxl-7{grid-column-start:7}.grid .g-start-xxl-8{grid-column-start:8}.grid .g-start-xxl-9{grid-column-start:9}.grid .g-start-xxl-10{grid-column-start:10}.grid .g-start-xxl-11{grid-column-start:11}}.col{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333%}.offset-2{margin-left:16.66667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333%}.offset-5{margin-left:41.66667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333%}.offset-8{margin-left:66.66667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333%}.offset-11{margin-left:91.66667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: .25rem}.g-1,.gy-1{--bs-gutter-y: .25rem}.g-2,.gx-2{--bs-gutter-x: .5rem}.g-2,.gy-2{--bs-gutter-y: .5rem}.g-3,.gx-3{--bs-gutter-x: 1rem}.g-3,.gy-3{--bs-gutter-y: 1rem}.g-4,.gx-4{--bs-gutter-x: 1.5rem}.g-4,.gy-4{--bs-gutter-y: 1.5rem}.g-5,.gx-5{--bs-gutter-x: 3rem}.g-5,.gy-5{--bs-gutter-y: 3rem}@media (min-width: 576px){.col-sm{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-sm-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-sm-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-sm-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-sm-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-sm-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-sm-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-sm-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-sm-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-sm-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-sm-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333%}.offset-sm-2{margin-left:16.66667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333%}.offset-sm-5{margin-left:41.66667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333%}.offset-sm-8{margin-left:66.66667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333%}.offset-sm-11{margin-left:91.66667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: .25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: .25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: .5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: .5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 3rem}}@media (min-width: 768px){.col-md{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-md-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-md-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-md-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-md-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-md-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-md-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-md-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-md-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-md-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-md-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333%}.offset-md-2{margin-left:16.66667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333%}.offset-md-5{margin-left:41.66667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333%}.offset-md-8{margin-left:66.66667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333%}.offset-md-11{margin-left:91.66667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: .25rem}.g-md-1,.gy-md-1{--bs-gutter-y: .25rem}.g-md-2,.gx-md-2{--bs-gutter-x: .5rem}.g-md-2,.gy-md-2{--bs-gutter-y: .5rem}.g-md-3,.gx-md-3{--bs-gutter-x: 1rem}.g-md-3,.gy-md-3{--bs-gutter-y: 1rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x: 3rem}.g-md-5,.gy-md-5{--bs-gutter-y: 3rem}}@media (min-width: 992px){.col-lg{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-lg-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-lg-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-lg-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-lg-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-lg-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-lg-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-lg-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-lg-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-lg-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-lg-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333%}.offset-lg-2{margin-left:16.66667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333%}.offset-lg-5{margin-left:41.66667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333%}.offset-lg-8{margin-left:66.66667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333%}.offset-lg-11{margin-left:91.66667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: .25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: .25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: .5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: .5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 3rem}}@media (min-width: 1200px){.col-xl{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-xl-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xl-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-xl-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xl-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-xl-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-xl-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-xl-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-xl-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-xl-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-xl-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333%}.offset-xl-2{margin-left:16.66667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333%}.offset-xl-5{margin-left:41.66667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333%}.offset-xl-8{margin-left:66.66667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333%}.offset-xl-11{margin-left:91.66667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: .25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: .25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: .5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: .5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 3rem}}@media (min-width: 1400px){.col-xxl{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-xxl-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xxl-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-xxl-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xxl-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-xxl-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-xxl-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-xxl-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-xxl-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-xxl-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-xxl-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333%}.offset-xxl-2{margin-left:16.66667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333%}.offset-xxl-5{margin-left:41.66667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333%}.offset-xxl-8{margin-left:66.66667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333%}.offset-xxl-11{margin-left:91.66667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: .25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: .25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: .5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: .5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 3rem}}.table{--bs-table-color-type: initial;--bs-table-bg-type: initial;--bs-table-color-state: initial;--bs-table-bg-state: initial;--bs-table-color: var(--bs-body-color);--bs-table-bg: var(--bs-body-bg);--bs-table-border-color: var(--bs-border-color);--bs-table-accent-bg: rgba(0,0,0,0);--bs-table-striped-color: var(--bs-body-color);--bs-table-striped-bg: rgba(0,0,0,0.05);--bs-table-active-color: var(--bs-body-color);--bs-table-active-bg: rgba(0,0,0,0.1);--bs-table-hover-color: var(--bs-body-color);--bs-table-hover-bg: rgba(0,0,0,0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-active{--bs-table-color-state: var(--bs-table-active-color);--bs-table-bg-state: var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state: var(--bs-table-hover-color);--bs-table-bg-state: var(--bs-table-hover-bg)}.table-primary{--bs-table-color: #000;--bs-table-bg: #f2d4d1;--bs-table-border-color: #dabfbc;--bs-table-striped-bg: #e6c9c7;--bs-table-striped-color: #000;--bs-table-active-bg: #dabfbc;--bs-table-active-color: #000;--bs-table-hover-bg: #e0c4c1;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #e2e3e5;--bs-table-border-color: #cbccce;--bs-table-striped-bg: #d7d8da;--bs-table-striped-color: #000;--bs-table-active-bg: #cbccce;--bs-table-active-color: #000;--bs-table-hover-bg: #d1d2d4;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #d1e7dd;--bs-table-border-color: #bcd0c7;--bs-table-striped-bg: #c7dbd2;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #cff4fc;--bs-table-border-color: #badce3;--bs-table-striped-bg: #c5e8ef;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #fff3cd;--bs-table-border-color: #e6dbb9;--bs-table-striped-bg: #f2e7c3;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #f8d7da;--bs-table-border-color: #dfc2c4;--bs-table-striped-bg: #eccccf;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #f8f9fa;--bs-table-border-color: #dfe0e1;--bs-table-striped-bg: #ecedee;--bs-table-striped-color: #000;--bs-table-active-bg: #dfe0e1;--bs-table-active-color: #000;--bs-table-hover-bg: #e5e6e7;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #212529;--bs-table-border-color: #373b3e;--bs-table-striped-bg: #2c3034;--bs-table-striped-color: #fff;--bs-table-active-bg: #373b3e;--bs-table-active-color: #fff;--bs-table-hover-bg: #323539;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label,.shiny-input-container .control-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type="file"]{overflow:hidden}.form-control[type="file"]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#df948d;outline:0;box-shadow:0 0 0 .25rem rgba(191,40,27,0.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon, none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-select{transition:none}}.form-select:focus{border-color:#df948d;outline:0;box-shadow:0 0 0 .25rem rgba(191,40,27,0.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme="dark"] .form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check,.shiny-input-container .checkbox,.shiny-input-container .radio{display:block;min-height:1.5rem;padding-left:0;margin-bottom:.125rem}.form-check .form-check-input,.form-check .shiny-input-container .checkbox input,.form-check .shiny-input-container .radio input,.shiny-input-container .checkbox .form-check-input,.shiny-input-container .checkbox .shiny-input-container .checkbox input,.shiny-input-container .checkbox .shiny-input-container .radio input,.shiny-input-container .radio .form-check-input,.shiny-input-container .radio .shiny-input-container .checkbox input,.shiny-input-container .radio .shiny-input-container .radio input{float:left;margin-left:0}.form-check-reverse{padding-right:0;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:0;margin-left:0}.form-check-input,.shiny-input-container .checkbox input,.shiny-input-container .checkbox-inline input,.shiny-input-container .radio input,.shiny-input-container .radio-inline input{--bs-form-check-bg: var(--bs-body-bg);width:1em;height:1em;margin-top:.25em;vertical-align:top;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);print-color-adjust:exact}.form-check-input[type="checkbox"],.shiny-input-container .checkbox input[type="checkbox"],.shiny-input-container .checkbox-inline input[type="checkbox"],.shiny-input-container .radio input[type="checkbox"],.shiny-input-container .radio-inline input[type="checkbox"]{border-radius:.25em}.form-check-input[type="radio"],.shiny-input-container .checkbox input[type="radio"],.shiny-input-container .checkbox-inline input[type="radio"],.shiny-input-container .radio input[type="radio"],.shiny-input-container .radio-inline input[type="radio"]{border-radius:50%}.form-check-input:active,.shiny-input-container .checkbox input:active,.shiny-input-container .checkbox-inline input:active,.shiny-input-container .radio input:active,.shiny-input-container .radio-inline input:active{filter:brightness(90%)}.form-check-input:focus,.shiny-input-container .checkbox input:focus,.shiny-input-container .checkbox-inline input:focus,.shiny-input-container .radio input:focus,.shiny-input-container .radio-inline input:focus{border-color:#df948d;outline:0;box-shadow:0 0 0 .25rem rgba(191,40,27,0.25)}.form-check-input:checked,.shiny-input-container .checkbox input:checked,.shiny-input-container .checkbox-inline input:checked,.shiny-input-container .radio input:checked,.shiny-input-container .radio-inline input:checked{background-color:#BF281B;border-color:#BF281B}.form-check-input:checked[type="checkbox"],.shiny-input-container .checkbox input:checked[type="checkbox"],.shiny-input-container .checkbox-inline input:checked[type="checkbox"],.shiny-input-container .radio input:checked[type="checkbox"],.shiny-input-container .radio-inline input:checked[type="checkbox"]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type="radio"],.shiny-input-container .checkbox input:checked[type="radio"],.shiny-input-container .checkbox-inline input:checked[type="radio"],.shiny-input-container .radio input:checked[type="radio"],.shiny-input-container .radio-inline input:checked[type="radio"]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type="checkbox"]:indeterminate,.shiny-input-container .checkbox input[type="checkbox"]:indeterminate,.shiny-input-container .checkbox-inline input[type="checkbox"]:indeterminate,.shiny-input-container .radio input[type="checkbox"]:indeterminate,.shiny-input-container .radio-inline input[type="checkbox"]:indeterminate{background-color:#BF281B;border-color:#BF281B;--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled,.shiny-input-container .checkbox input:disabled,.shiny-input-container .checkbox-inline input:disabled,.shiny-input-container .radio input:disabled,.shiny-input-container .radio-inline input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input[disabled]~span,.form-check-input:disabled~.form-check-label,.form-check-input:disabled~span,.shiny-input-container .checkbox input[disabled]~.form-check-label,.shiny-input-container .checkbox input[disabled]~span,.shiny-input-container .checkbox input:disabled~.form-check-label,.shiny-input-container .checkbox input:disabled~span,.shiny-input-container .checkbox-inline input[disabled]~.form-check-label,.shiny-input-container .checkbox-inline input[disabled]~span,.shiny-input-container .checkbox-inline input:disabled~.form-check-label,.shiny-input-container .checkbox-inline input:disabled~span,.shiny-input-container .radio input[disabled]~.form-check-label,.shiny-input-container .radio input[disabled]~span,.shiny-input-container .radio input:disabled~.form-check-label,.shiny-input-container .radio input:disabled~span,.shiny-input-container .radio-inline input[disabled]~.form-check-label,.shiny-input-container .radio-inline input[disabled]~span,.shiny-input-container .radio-inline input:disabled~.form-check-label,.shiny-input-container .radio-inline input:disabled~span{cursor:default;opacity:.5}.form-check-label,.shiny-input-container .checkbox label,.shiny-input-container .checkbox-inline label,.shiny-input-container .radio label,.shiny-input-container .radio-inline label{cursor:pointer}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280,0,0,0.25%29'/%3e%3c/svg%3e");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23df948d'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255,255,255,0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(191,40,27,0.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(191,40,27,0.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#BF281B;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#ecbfbb}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#BF281B;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#ecbfbb}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity 0.1s ease-in-out,transform 0.1s ease-in-out}@media (prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:transparent}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb), .65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-control-plaintext~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb), .65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>:disabled~label,.form-floating>.form-control:disabled~label{color:#6c757d}.form-floating>:disabled~label::after,.form-floating>.form-control:disabled~label::after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:stretch;-webkit-align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n + 3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>:nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n + 4),.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3rem + calc(1.5em + .75rem))}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:var(--bs-form-valid-color)}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3rem + calc(1.5em + .75rem))}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:var(--bs-form-invalid-color)}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: .75rem;--bs-btn-padding-y: .375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: var(--bs-body-color);--bs-btn-bg: transparent;--bs-btn-border-width: var(--bs-border-width);--bs-btn-border-color: transparent;--bs-btn-border-radius: var(--bs-border-radius);--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);--bs-btn-disabled-opacity: .65;--bs-btn-focus-box-shadow: 0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-default{--bs-btn-color: #000;--bs-btn-bg: #dee2e6;--bs-btn-border-color: #dee2e6;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #e3e6ea;--bs-btn-hover-border-color: #e1e5e9;--bs-btn-focus-shadow-rgb: 189,192,196;--bs-btn-active-color: #000;--bs-btn-active-bg: #e5e8eb;--bs-btn-active-border-color: #e1e5e9;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #dee2e6;--bs-btn-disabled-border-color: #dee2e6}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #BF281B;--bs-btn-border-color: #BF281B;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #a22217;--bs-btn-hover-border-color: #992016;--bs-btn-focus-shadow-rgb: 201,72,61;--bs-btn-active-color: #fff;--bs-btn-active-bg: #992016;--bs-btn-active-border-color: #8f1e14;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #BF281B;--bs-btn-disabled-border-color: #BF281B}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #5c636a;--bs-btn-hover-border-color: #565e64;--bs-btn-focus-shadow-rgb: 130,138,145;--bs-btn-active-color: #fff;--bs-btn-active-bg: #565e64;--bs-btn-active-border-color: #51585e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #6c757d;--bs-btn-disabled-border-color: #6c757d}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #157347;--bs-btn-hover-border-color: #146c43;--bs-btn-focus-shadow-rgb: 60,153,110;--bs-btn-active-color: #fff;--bs-btn-active-bg: #146c43;--bs-btn-active-border-color: #13653f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #198754;--bs-btn-disabled-border-color: #198754}.btn-info{--bs-btn-color: #000;--bs-btn-bg: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #31d2f2;--bs-btn-hover-border-color: #25cff2;--bs-btn-focus-shadow-rgb: 11,172,204;--bs-btn-active-color: #000;--bs-btn-active-bg: #3dd5f3;--bs-btn-active-border-color: #25cff2;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #0dcaf0;--bs-btn-disabled-border-color: #0dcaf0}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffca2c;--bs-btn-hover-border-color: #ffc720;--bs-btn-focus-shadow-rgb: 217,164,6;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffcd39;--bs-btn-active-border-color: #ffc720;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #ffc107;--bs-btn-disabled-border-color: #ffc107}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #bb2d3b;--bs-btn-hover-border-color: #b02a37;--bs-btn-focus-shadow-rgb: 225,83,97;--bs-btn-active-color: #fff;--bs-btn-active-bg: #b02a37;--bs-btn-active-border-color: #a52834;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #dc3545;--bs-btn-disabled-border-color: #dc3545}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #d3d4d5;--bs-btn-hover-border-color: #c6c7c8;--bs-btn-focus-shadow-rgb: 211,212,213;--bs-btn-active-color: #000;--bs-btn-active-bg: #c6c7c8;--bs-btn-active-border-color: #babbbc;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #f8f9fa;--bs-btn-disabled-border-color: #f8f9fa}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #424649;--bs-btn-hover-border-color: #373b3e;--bs-btn-focus-shadow-rgb: 66,70,73;--bs-btn-active-color: #fff;--bs-btn-active-bg: #4d5154;--bs-btn-active-border-color: #373b3e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #212529;--bs-btn-disabled-border-color: #212529}.btn-outline-default{--bs-btn-color: #dee2e6;--bs-btn-border-color: #dee2e6;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #dee2e6;--bs-btn-hover-border-color: #dee2e6;--bs-btn-focus-shadow-rgb: 222,226,230;--bs-btn-active-color: #000;--bs-btn-active-bg: #dee2e6;--bs-btn-active-border-color: #dee2e6;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #dee2e6;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dee2e6;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-primary{--bs-btn-color: #BF281B;--bs-btn-border-color: #BF281B;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #BF281B;--bs-btn-hover-border-color: #BF281B;--bs-btn-focus-shadow-rgb: 191,40,27;--bs-btn-active-color: #fff;--bs-btn-active-bg: #BF281B;--bs-btn-active-border-color: #BF281B;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #BF281B;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #BF281B;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #6c757d;--bs-btn-hover-border-color: #6c757d;--bs-btn-focus-shadow-rgb: 108,117,125;--bs-btn-active-color: #fff;--bs-btn-active-bg: #6c757d;--bs-btn-active-border-color: #6c757d;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #6c757d;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #198754;--bs-btn-hover-border-color: #198754;--bs-btn-focus-shadow-rgb: 25,135,84;--bs-btn-active-color: #fff;--bs-btn-active-bg: #198754;--bs-btn-active-border-color: #198754;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #198754;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #198754;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #0dcaf0;--bs-btn-hover-border-color: #0dcaf0;--bs-btn-focus-shadow-rgb: 13,202,240;--bs-btn-active-color: #000;--bs-btn-active-bg: #0dcaf0;--bs-btn-active-border-color: #0dcaf0;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #0dcaf0;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0dcaf0;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffc107;--bs-btn-hover-border-color: #ffc107;--bs-btn-focus-shadow-rgb: 255,193,7;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffc107;--bs-btn-active-border-color: #ffc107;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #ffc107;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ffc107;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #dc3545;--bs-btn-hover-border-color: #dc3545;--bs-btn-focus-shadow-rgb: 220,53,69;--bs-btn-active-color: #fff;--bs-btn-active-bg: #dc3545;--bs-btn-active-border-color: #dc3545;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #dc3545;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dc3545;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #f8f9fa;--bs-btn-hover-border-color: #f8f9fa;--bs-btn-focus-shadow-rgb: 248,249,250;--bs-btn-active-color: #000;--bs-btn-active-bg: #f8f9fa;--bs-btn-active-border-color: #f8f9fa;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #f8f9fa;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #f8f9fa;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #212529;--bs-btn-hover-border-color: #212529;--bs-btn-focus-shadow-rgb: 33,37,41;--bs-btn-active-color: #fff;--bs-btn-active-bg: #212529;--bs-btn-active-border-color: #212529;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #212529;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #212529;--bs-btn-bg: transparent;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: var(--bs-link-color);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--bs-link-hover-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--bs-link-hover-color);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: 0 0 0 #000;--bs-btn-focus-shadow-rgb: 201,72,61;text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: .5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius: var(--bs-border-radius-lg)}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: .25rem;--bs-btn-padding-x: .5rem;--bs-btn-font-size:.875rem;--bs-btn-border-radius: var(--bs-border-radius-sm)}.fade{transition:opacity 0.15s linear}@media (prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 10rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: .5rem;--bs-dropdown-spacer: .125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color: var(--bs-body-color);--bs-dropdown-bg: var(--bs-body-bg);--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-border-radius: var(--bs-border-radius);--bs-dropdown-border-width: var(--bs-border-width);--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y: .5rem;--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15);--bs-dropdown-link-color: var(--bs-body-color);--bs-dropdown-link-hover-color: var(--bs-body-color);--bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #BF281B;--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);--bs-dropdown-item-padding-x: 1rem;--bs-dropdown-item-padding-y: .25rem;--bs-dropdown-header-color: #6c757d;--bs-dropdown-header-padding-x: 1rem;--bs-dropdown-header-padding-y: .5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius, 0)}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #343a40;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg: rgba(255,255,255,0.15);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #BF281B;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-header-color: #adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto}.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;justify-content:flex-start;-webkit-justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:nth-child(n + 3),.btn-group>:not(.btn-check)+.btn,.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;-webkit-flex-direction:column;align-items:flex-start;-webkit-align-items:flex-start;justify-content:center;-webkit-justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn~.btn,.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background:none;border:0;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(191,40,27,0.25)}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: var(--bs-border-width);--bs-nav-tabs-border-color: var(--bs-border-color);--bs-nav-tabs-border-radius: var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color: var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius: var(--bs-border-radius);--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #BF281B}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: .125rem;--bs-nav-underline-link-active-color: var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:hover,.nav-underline .nav-link:focus{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill>.nav-link,.nav-fill .nav-item{flex:1 1 auto;-webkit-flex:1 1 auto;text-align:center}.nav-justified>.nav-link,.nav-justified .nav-item{flex-basis:0;-webkit-flex-basis:0;flex-grow:1;-webkit-flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x: 0;--bs-navbar-padding-y: .5rem;--bs-navbar-color: #fff;--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y: .3125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.25rem;--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff;--bs-navbar-nav-link-padding-x: .5rem;--bs-navbar-toggler-padding-y: .25rem;--bs-navbar-toggler-padding-x: .75rem;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833,37,41,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius: var(--bs-border-radius);--bs-navbar-toggler-focus-width: .25rem;--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl{display:flex;display:-webkit-flex;flex-wrap:inherit;-webkit-flex-wrap:inherit;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;-webkit-flex-basis:100%;flex-grow:1;-webkit-flex-grow:1;align-items:center;-webkit-align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media (min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme="dark"]{--bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.55);--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.75);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.25);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.1);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme="dark"] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y: 1rem;--bs-card-spacer-x: 1rem;--bs-card-title-spacer-y: .5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width: var(--bs-border-width);--bs-card-border-color: var(--bs-border-color-translucent);--bs-card-border-radius: var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y: .5rem;--bs-card-cap-padding-x: 1rem;--bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: var(--bs-body-bg);--bs-card-img-overlay-padding: 1rem;--bs-card-group-margin: .75rem;position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;-webkit-flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width: 576px){.card-group{display:flex;display:-webkit-flex;flex-flow:row wrap;-webkit-flex-flow:row wrap}.card-group>.card{flex:1 0 0%;-webkit-flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer{border-bottom-left-radius:0}}.accordion{--bs-accordion-color: var(--bs-body-color);--bs-accordion-bg: var(--bs-body-bg);--bs-accordion-transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color: var(--bs-border-color);--bs-accordion-border-width: var(--bs-border-width);--bs-accordion-border-radius: var(--bs-border-radius);--bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: var(--bs-body-color);--bs-accordion-btn-bg: var(--bs-accordion-bg);--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%234c100b'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #df948d;--bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(191,40,27,0.25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: var(--bs-primary-text-emphasis);--bs-accordion-active-bg: var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;-webkit-flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme="dark"] .accordion-button::after{--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23d97e76'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23d97e76'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: var(--bs-secondary-color);--bs-breadcrumb-item-padding-x: .5rem;--bs-breadcrumb-item-active-color: var(--bs-secondary-color);display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size:1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(191,40,27,0.25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #BF281B;--bs-pagination-active-border-color: #BF281B;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;display:-webkit-flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size:.875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x: .65em;--bs-badge-padding-y: .35em;--bs-badge-font-size:.75em;--bs-badge-font-weight: 700;--bs-badge-color: #fff;--bs-badge-border-radius: var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 1rem;--bs-alert-padding-y: 1rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius: var(--bs-border-radius);--bs-alert-link-color: inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-default{--bs-alert-color: var(--bs-default-text-emphasis);--bs-alert-bg: var(--bs-default-bg-subtle);--bs-alert-border-color: var(--bs-default-border-subtle);--bs-alert-link-color: var(--bs-default-text-emphasis)}.alert-primary{--bs-alert-color: var(--bs-primary-text-emphasis);--bs-alert-bg: var(--bs-primary-bg-subtle);--bs-alert-border-color: var(--bs-primary-border-subtle);--bs-alert-link-color: var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color: var(--bs-secondary-text-emphasis);--bs-alert-bg: var(--bs-secondary-bg-subtle);--bs-alert-border-color: var(--bs-secondary-border-subtle);--bs-alert-link-color: var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color: var(--bs-success-text-emphasis);--bs-alert-bg: var(--bs-success-bg-subtle);--bs-alert-border-color: var(--bs-success-border-subtle);--bs-alert-link-color: var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color: var(--bs-info-text-emphasis);--bs-alert-bg: var(--bs-info-bg-subtle);--bs-alert-border-color: var(--bs-info-border-subtle);--bs-alert-link-color: var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color: var(--bs-warning-text-emphasis);--bs-alert-bg: var(--bs-warning-bg-subtle);--bs-alert-border-color: var(--bs-warning-border-subtle);--bs-alert-link-color: var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color: var(--bs-danger-text-emphasis);--bs-alert-bg: var(--bs-danger-bg-subtle);--bs-alert-border-color: var(--bs-danger-border-subtle);--bs-alert-link-color: var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color: var(--bs-light-text-emphasis);--bs-alert-bg: var(--bs-light-bg-subtle);--bs-alert-border-color: var(--bs-light-border-subtle);--bs-alert-link-color: var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color: var(--bs-dark-text-emphasis);--bs-alert-bg: var(--bs-dark-bg-subtle);--bs-alert-border-color: var(--bs-dark-border-subtle);--bs-alert-link-color: var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height: 1rem;--bs-progress-font-size:.75rem;--bs-progress-bg: var(--bs-secondary-bg);--bs-progress-border-radius: var(--bs-border-radius);--bs-progress-box-shadow: var(--bs-box-shadow-inset);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #BF281B;--bs-progress-bar-transition: width 0.6s ease;display:flex;display:-webkit-flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;justify-content:center;-webkit-justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: var(--bs-body-color);--bs-list-group-bg: var(--bs-body-bg);--bs-list-group-border-color: var(--bs-border-color);--bs-list-group-border-width: var(--bs-border-width);--bs-list-group-border-radius: var(--bs-border-radius);--bs-list-group-item-padding-x: 1rem;--bs-list-group-item-padding-y: .5rem;--bs-list-group-action-color: var(--bs-secondary-color);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-tertiary-bg);--bs-list-group-action-active-color: var(--bs-body-color);--bs-list-group-action-active-bg: var(--bs-secondary-bg);--bs-list-group-disabled-color: var(--bs-secondary-color);--bs-list-group-disabled-bg: var(--bs-body-bg);--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #BF281B;--bs-list-group-active-border-color: #BF281B;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width: 576px){.list-group-horizontal-sm{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 768px){.list-group-horizontal-md{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 992px){.list-group-horizontal-lg{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 1200px){.list-group-horizontal-xl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-default{--bs-list-group-color: var(--bs-default-text-emphasis);--bs-list-group-bg: var(--bs-default-bg-subtle);--bs-list-group-border-color: var(--bs-default-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-default-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-default-border-subtle);--bs-list-group-active-color: var(--bs-default-bg-subtle);--bs-list-group-active-bg: var(--bs-default-text-emphasis);--bs-list-group-active-border-color: var(--bs-default-text-emphasis)}.list-group-item-primary{--bs-list-group-color: var(--bs-primary-text-emphasis);--bs-list-group-bg: var(--bs-primary-bg-subtle);--bs-list-group-border-color: var(--bs-primary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-primary-border-subtle);--bs-list-group-active-color: var(--bs-primary-bg-subtle);--bs-list-group-active-bg: var(--bs-primary-text-emphasis);--bs-list-group-active-border-color: var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color: var(--bs-secondary-text-emphasis);--bs-list-group-bg: var(--bs-secondary-bg-subtle);--bs-list-group-border-color: var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);--bs-list-group-active-color: var(--bs-secondary-bg-subtle);--bs-list-group-active-bg: var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color: var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color: var(--bs-success-text-emphasis);--bs-list-group-bg: var(--bs-success-bg-subtle);--bs-list-group-border-color: var(--bs-success-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-success-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-success-border-subtle);--bs-list-group-active-color: var(--bs-success-bg-subtle);--bs-list-group-active-bg: var(--bs-success-text-emphasis);--bs-list-group-active-border-color: var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color: var(--bs-info-text-emphasis);--bs-list-group-bg: var(--bs-info-bg-subtle);--bs-list-group-border-color: var(--bs-info-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-info-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-info-border-subtle);--bs-list-group-active-color: var(--bs-info-bg-subtle);--bs-list-group-active-bg: var(--bs-info-text-emphasis);--bs-list-group-active-border-color: var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color: var(--bs-warning-text-emphasis);--bs-list-group-bg: var(--bs-warning-bg-subtle);--bs-list-group-border-color: var(--bs-warning-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-warning-border-subtle);--bs-list-group-active-color: var(--bs-warning-bg-subtle);--bs-list-group-active-bg: var(--bs-warning-text-emphasis);--bs-list-group-active-border-color: var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color: var(--bs-danger-text-emphasis);--bs-list-group-bg: var(--bs-danger-bg-subtle);--bs-list-group-border-color: var(--bs-danger-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-danger-border-subtle);--bs-list-group-active-color: var(--bs-danger-bg-subtle);--bs-list-group-active-bg: var(--bs-danger-text-emphasis);--bs-list-group-active-border-color: var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color: var(--bs-light-text-emphasis);--bs-list-group-bg: var(--bs-light-bg-subtle);--bs-list-group-border-color: var(--bs-light-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-light-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-light-border-subtle);--bs-list-group-active-color: var(--bs-light-bg-subtle);--bs-list-group-active-bg: var(--bs-light-text-emphasis);--bs-list-group-active-border-color: var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color: var(--bs-dark-text-emphasis);--bs-list-group-bg: var(--bs-dark-bg-subtle);--bs-list-group-border-color: var(--bs-dark-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-dark-border-subtle);--bs-list-group-active-color: var(--bs-dark-bg-subtle);--bs-list-group-active-bg: var(--bs-dark-text-emphasis);--bs-list-group-active-border-color: var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity: .5;--bs-btn-close-hover-opacity: .75;--bs-btn-close-focus-shadow: 0 0 0 .25rem rgba(191,40,27,0.25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: .25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close:disabled,.btn-close.disabled{pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme="dark"] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: .75rem;--bs-toast-padding-y: .5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 350px;--bs-toast-font-size:.875rem;--bs-toast-color: ;--bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width: var(--bs-border-width);--bs-toast-border-color: var(--bs-border-color-translucent);--bs-toast-border-radius: var(--bs-border-radius);--bs-toast-box-shadow: var(--bs-box-shadow);--bs-toast-header-color: var(--bs-secondary-color);--bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color: var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;width:-webkit-max-content;width:-moz-max-content;width:-ms-max-content;width:-o-max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 1rem;--bs-modal-margin: .5rem;--bs-modal-color: ;--bs-modal-bg: var(--bs-body-bg);--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: var(--bs-border-width);--bs-modal-border-radius: var(--bs-border-radius-lg);--bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x: 1rem;--bs-modal-header-padding-y: 1rem;--bs-modal-header-padding: 1rem 1rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: var(--bs-border-width);--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: .5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform 0.3s ease-out;transform:translate(0, -50px)}@media (prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #000;--bs-backdrop-opacity: .5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:flex-end;-webkit-justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width: 576px){.modal{--bs-modal-margin: 1.75rem;--bs-modal-box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media (min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media (min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header,.modal-fullscreen .modal-footer{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header,.modal-fullscreen-sm-down .modal-footer{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header,.modal-fullscreen-md-down .modal-footer{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header,.modal-fullscreen-lg-down .modal-footer{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header,.modal-fullscreen-xl-down .modal-footer{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header,.modal-fullscreen-xxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 200px;--bs-tooltip-padding-x: .5rem;--bs-tooltip-padding-y: .25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:.875rem;--bs-tooltip-color: var(--bs-body-bg);--bs-tooltip-bg: var(--bs-emphasis-color);--bs-tooltip-border-radius: var(--bs-border-radius);--bs-tooltip-opacity: .9;--bs-tooltip-arrow-width: .8rem;--bs-tooltip-arrow-height: .4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow{bottom:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow{left:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow{top:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow{right:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size:.875rem;--bs-popover-bg: var(--bs-body-bg);--bs-popover-border-width: var(--bs-border-width);--bs-popover-border-color: var(--bs-border-color-translucent);--bs-popover-border-radius: var(--bs-border-radius-lg);--bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15);--bs-popover-header-padding-x: 1rem;--bs-popover-header-padding-y: .5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: inherit;--bs-popover-header-bg: var(--bs-secondary-bg);--bs-popover-body-padding-x: 1rem;--bs-popover-body-padding-y: 1rem;--bs-popover-body-color: var(--bs-body-color);--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: .5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-bottom .popover-header::before,.bs-popover-auto[data-popper-placement^="bottom"] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y;-webkit-touch-action:pan-y;-moz-touch-action:pan-y;-ms-touch-action:pan-y;-o-touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end{transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start{transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end{z-index:1;opacity:1}.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:center;-webkit-justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;transition:opacity 0.15s ease}@media (prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;display:-webkit-flex;justify-content:center;-webkit-justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;-webkit-flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity 0.6s ease}@media (prefers-reduced-motion: reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme="dark"] .carousel .carousel-control-prev-icon,[data-bs-theme="dark"] .carousel .carousel-control-next-icon,[data-bs-theme="dark"].carousel .carousel-control-prev-icon,[data-bs-theme="dark"].carousel .carousel-control-next-icon{filter:invert(1) grayscale(100)}[data-bs-theme="dark"] .carousel .carousel-indicators [data-bs-target],[data-bs-theme="dark"].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme="dark"] .carousel .carousel-caption,[data-bs-theme="dark"].carousel .carousel-caption{color:#000}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-border-width: .25em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: .2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media (prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 1rem;--bs-offcanvas-padding-y: 1rem;--bs-offcanvas-color: var(--bs-body-color);--bs-offcanvas-bg: var(--bs-body-bg);--bs-offcanvas-border-width: var(--bs-border-width);--bs-offcanvas-border-color: var(--bs-border-color-translucent);--bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-offcanvas-transition: transform .3s ease-in-out;--bs-offcanvas-title-line-height: 1.5}@media (max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 575.98px) and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media (max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding){transform:none}.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show{visibility:visible}}@media (min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 767.98px) and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media (max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.showing,.offcanvas-md.show:not(.hiding){transform:none}.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show{visibility:visible}}@media (min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 991.98px) and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media (max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding){transform:none}.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show{visibility:visible}}@media (min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media (max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding){transform:none}.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show{visibility:visible}}@media (min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media (max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding){transform:none}.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show{visibility:visible}}@media (min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin-top:calc(-.5 * var(--bs-offcanvas-padding-y));margin-right:calc(-.5 * var(--bs-offcanvas-padding-x));margin-bottom:calc(-.5 * var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;-webkit-flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0,0,0,0.8) 75%, #000 95%);-webkit-mask-image:linear-gradient(130deg, #000 55%, rgba(0,0,0,0.8) 75%, #000 95%);mask-size:200% 100%;-webkit-mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%;-webkit-mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-default{color:#000 !important;background-color:RGBA(var(--bs-default-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-primary{color:#fff !important;background-color:RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important}.link-default{color:RGBA(var(--bs-default-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-default-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-default:hover,.link-default:focus{color:RGBA(229,232,235, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(229,232,235, var(--bs-link-underline-opacity, 1)) !important}.link-primary{color:RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-primary:hover,.link-primary:focus{color:RGBA(153,32,22, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(153,32,22, var(--bs-link-underline-opacity, 1)) !important}.link-secondary{color:RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-secondary:hover,.link-secondary:focus{color:RGBA(86,94,100, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(86,94,100, var(--bs-link-underline-opacity, 1)) !important}.link-success{color:RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-success:hover,.link-success:focus{color:RGBA(20,108,67, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(20,108,67, var(--bs-link-underline-opacity, 1)) !important}.link-info{color:RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-info:hover,.link-info:focus{color:RGBA(61,213,243, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(61,213,243, var(--bs-link-underline-opacity, 1)) !important}.link-warning{color:RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-warning:hover,.link-warning:focus{color:RGBA(255,205,57, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(255,205,57, var(--bs-link-underline-opacity, 1)) !important}.link-danger{color:RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-danger:hover,.link-danger:focus{color:RGBA(176,42,55, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(176,42,55, var(--bs-link-underline-opacity, 1)) !important}.link-light{color:RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-light:hover,.link-light:focus{color:RGBA(249,250,251, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(249,250,251, var(--bs-link-underline-opacity, 1)) !important}.link-dark{color:RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-dark:hover,.link-dark:focus{color:RGBA(26,30,33, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(26,30,33, var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));text-underline-offset:.25em;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;-webkit-flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:0.2s ease-in-out transform}@media (prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(0.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: calc(3 / 4 * 100%)}.ratio-16x9{--bs-aspect-ratio: calc(9 / 16 * 100%)}.ratio-21x9{--bs-aspect-ratio: calc(9 / 21 * 100%)}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row;align-items:center;-webkit-align-items:center;align-self:stretch;-webkit-align-self:stretch}.vstack{display:flex;display:-webkit-flex;flex:1 1 auto;-webkit-flex:1 1 auto;flex-direction:column;-webkit-flex-direction:column;align-self:stretch;-webkit-align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;-webkit-align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.object-fit-contain{object-fit:contain !important}.object-fit-cover{object-fit:cover !important}.object-fit-fill{object-fit:fill !important}.object-fit-scale{object-fit:scale-down !important}.object-fit-none{object-fit:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.overflow-x-auto{overflow-x:auto !important}.overflow-x-hidden{overflow-x:hidden !important}.overflow-x-visible{overflow-x:visible !important}.overflow-x-scroll{overflow-x:scroll !important}.overflow-y-auto{overflow-y:auto !important}.overflow-y-hidden{overflow-y:hidden !important}.overflow-y-visible{overflow-y:visible !important}.overflow-y-scroll{overflow-y:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-inline-grid{display:inline-grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important}.shadow-sm{box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,0.175) !important}.shadow-none{box-shadow:none !important}.focus-ring-default{--bs-focus-ring-color: rgba(var(--bs-default-rgb), var(--bs-focus-ring-opacity))}.focus-ring-primary{--bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-0{border:0 !important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-top-0{border-top:0 !important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-start-0{border-left:0 !important}.border-default{--bs-border-opacity: 1;border-color:rgba(var(--bs-default-rgb), var(--bs-border-opacity)) !important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important}.border-black{--bs-border-opacity: 1;border-color:rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle) !important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle) !important}.border-success-subtle{border-color:var(--bs-success-border-subtle) !important}.border-info-subtle{border-color:var(--bs-info-border-subtle) !important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle) !important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle) !important}.border-light-subtle{border-color:var(--bs-light-border-subtle) !important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle) !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.border-opacity-10{--bs-border-opacity: .1}.border-opacity-25{--bs-border-opacity: .25}.border-opacity-50{--bs-border-opacity: .5}.border-opacity-75{--bs-border-opacity: .75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.25rem !important}.m-2{margin:.5rem !important}.m-3{margin:1rem !important}.m-4{margin:1.5rem !important}.m-5{margin:3rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.25rem !important}.mt-2{margin-top:.5rem !important}.mt-3{margin-top:1rem !important}.mt-4{margin-top:1.5rem !important}.mt-5{margin-top:3rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.25rem !important}.me-2{margin-right:.5rem !important}.me-3{margin-right:1rem !important}.me-4{margin-right:1.5rem !important}.me-5{margin-right:3rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.25rem !important}.mb-2{margin-bottom:.5rem !important}.mb-3{margin-bottom:1rem !important}.mb-4{margin-bottom:1.5rem !important}.mb-5{margin-bottom:3rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.25rem !important}.ms-2{margin-left:.5rem !important}.ms-3{margin-left:1rem !important}.ms-4{margin-left:1.5rem !important}.ms-5{margin-left:3rem !important}.ms-auto{margin-left:auto !important}.p-0{padding:0 !important}.p-1{padding:.25rem !important}.p-2{padding:.5rem !important}.p-3{padding:1rem !important}.p-4{padding:1.5rem !important}.p-5{padding:3rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.25rem !important}.pt-2{padding-top:.5rem !important}.pt-3{padding-top:1rem !important}.pt-4{padding-top:1.5rem !important}.pt-5{padding-top:3rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.25rem !important}.pe-2{padding-right:.5rem !important}.pe-3{padding-right:1rem !important}.pe-4{padding-right:1.5rem !important}.pe-5{padding-right:3rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.25rem !important}.pb-2{padding-bottom:.5rem !important}.pb-3{padding-bottom:1rem !important}.pb-4{padding-bottom:1.5rem !important}.pb-5{padding-bottom:3rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.25rem !important}.ps-2{padding-left:.5rem !important}.ps-3{padding-left:1rem !important}.ps-4{padding-left:1.5rem !important}.ps-5{padding-left:3rem !important}.gap-0{gap:0 !important}.gap-1{gap:.25rem !important}.gap-2{gap:.5rem !important}.gap-3{gap:1rem !important}.gap-4{gap:1.5rem !important}.gap-5{gap:3rem !important}.row-gap-0{row-gap:0 !important}.row-gap-1{row-gap:.25rem !important}.row-gap-2{row-gap:.5rem !important}.row-gap-3{row-gap:1rem !important}.row-gap-4{row-gap:1.5rem !important}.row-gap-5{row-gap:3rem !important}.column-gap-0{column-gap:0 !important}.column-gap-1{column-gap:.25rem !important}.column-gap-2{column-gap:.5rem !important}.column-gap-3{column-gap:1rem !important}.column-gap-4{column-gap:1.5rem !important}.column-gap-5{column-gap:3rem !important}.font-monospace{font-family:var(--bs-font-monospace) !important}.fs-1{font-size:calc(1.375rem + 1.5vw) !important}.fs-2{font-size:calc(1.325rem + .9vw) !important}.fs-3{font-size:calc(1.3rem + .6vw) !important}.fs-4{font-size:calc(1.275rem + .3vw) !important}.fs-5{font-size:1.25rem !important}.fs-6{font-size:1rem !important}.fst-italic{font-style:italic !important}.fst-normal{font-style:normal !important}.fw-lighter{font-weight:lighter !important}.fw-light{font-weight:300 !important}.fw-normal{font-weight:400 !important}.fw-medium{font-weight:500 !important}.fw-semibold{font-weight:600 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-default{--bs-text-opacity: 1;color:rgba(var(--bs-default-rgb), var(--bs-text-opacity)) !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,0.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,0.5) !important}.text-body-secondary{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-body-tertiary{--bs-text-opacity: 1;color:var(--bs-tertiary-color) !important}.text-body-emphasis{--bs-text-opacity: 1;color:var(--bs-emphasis-color) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: .25}.text-opacity-50{--bs-text-opacity: .5}.text-opacity-75{--bs-text-opacity: .75}.text-opacity-100{--bs-text-opacity: 1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis) !important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis) !important}.text-success-emphasis{color:var(--bs-success-text-emphasis) !important}.text-info-emphasis{color:var(--bs-info-text-emphasis) !important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis) !important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis) !important}.text-light-emphasis{color:var(--bs-light-text-emphasis) !important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis) !important}.link-opacity-10{--bs-link-opacity: .1}.link-opacity-10-hover:hover{--bs-link-opacity: .1}.link-opacity-25{--bs-link-opacity: .25}.link-opacity-25-hover:hover{--bs-link-opacity: .25}.link-opacity-50{--bs-link-opacity: .5}.link-opacity-50-hover:hover{--bs-link-opacity: .5}.link-opacity-75{--bs-link-opacity: .75}.link-opacity-75-hover:hover{--bs-link-opacity: .75}.link-opacity-100{--bs-link-opacity: 1}.link-opacity-100-hover:hover{--bs-link-opacity: 1}.link-offset-1{text-underline-offset:.125em !important}.link-offset-1-hover:hover{text-underline-offset:.125em !important}.link-offset-2{text-underline-offset:.25em !important}.link-offset-2-hover:hover{text-underline-offset:.25em !important}.link-offset-3{text-underline-offset:.375em !important}.link-offset-3-hover:hover{text-underline-offset:.375em !important}.link-underline-default{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-default-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-primary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-secondary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-success{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-info{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-warning{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-danger{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-light{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-dark{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important}.link-underline{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-underline-opacity-0{--bs-link-underline-opacity: 0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity: 0}.link-underline-opacity-10{--bs-link-underline-opacity: .1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity: .1}.link-underline-opacity-25{--bs-link-underline-opacity: .25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity: .25}.link-underline-opacity-50{--bs-link-underline-opacity: .5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity: .5}.link-underline-opacity-75{--bs-link-underline-opacity: .75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity: .75}.link-underline-opacity-100{--bs-link-underline-opacity: 1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity: 1}.bg-default{--bs-bg-opacity: 1;background-color:rgba(var(--bs-default-rgb), var(--bs-bg-opacity)) !important}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-body-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-body-tertiary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-opacity-10{--bs-bg-opacity: .1}.bg-opacity-25{--bs-bg-opacity: .25}.bg-opacity-50{--bs-bg-opacity: .5}.bg-opacity-75{--bs-bg-opacity: .75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle) !important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle) !important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle) !important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle) !important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle) !important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle) !important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle) !important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle) !important}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:var(--bs-border-radius) !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:var(--bs-border-radius-sm) !important}.rounded-2{border-radius:var(--bs-border-radius) !important}.rounded-3{border-radius:var(--bs-border-radius-lg) !important}.rounded-4{border-radius:var(--bs-border-radius-xl) !important}.rounded-5{border-radius:var(--bs-border-radius-xxl) !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}.rounded-top{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-0{border-top-left-radius:0 !important;border-top-right-radius:0 !important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm) !important;border-top-right-radius:var(--bs-border-radius-sm) !important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg) !important;border-top-right-radius:var(--bs-border-radius-lg) !important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl) !important;border-top-right-radius:var(--bs-border-radius-xl) !important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl) !important;border-top-right-radius:var(--bs-border-radius-xxl) !important}.rounded-top-circle{border-top-left-radius:50% !important;border-top-right-radius:50% !important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill) !important;border-top-right-radius:var(--bs-border-radius-pill) !important}.rounded-end{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-0{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm) !important;border-bottom-right-radius:var(--bs-border-radius-sm) !important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg) !important;border-bottom-right-radius:var(--bs-border-radius-lg) !important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl) !important;border-bottom-right-radius:var(--bs-border-radius-xl) !important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-right-radius:var(--bs-border-radius-xxl) !important}.rounded-end-circle{border-top-right-radius:50% !important;border-bottom-right-radius:50% !important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill) !important;border-bottom-right-radius:var(--bs-border-radius-pill) !important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-0{border-bottom-right-radius:0 !important;border-bottom-left-radius:0 !important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm) !important;border-bottom-left-radius:var(--bs-border-radius-sm) !important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg) !important;border-bottom-left-radius:var(--bs-border-radius-lg) !important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl) !important;border-bottom-left-radius:var(--bs-border-radius-xl) !important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-left-radius:var(--bs-border-radius-xxl) !important}.rounded-bottom-circle{border-bottom-right-radius:50% !important;border-bottom-left-radius:50% !important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill) !important;border-bottom-left-radius:var(--bs-border-radius-pill) !important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-0{border-bottom-left-radius:0 !important;border-top-left-radius:0 !important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm) !important;border-top-left-radius:var(--bs-border-radius-sm) !important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg) !important;border-top-left-radius:var(--bs-border-radius-lg) !important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl) !important;border-top-left-radius:var(--bs-border-radius-xl) !important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl) !important;border-top-left-radius:var(--bs-border-radius-xxl) !important}.rounded-start-circle{border-bottom-left-radius:50% !important;border-top-left-radius:50% !important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill) !important;border-top-left-radius:var(--bs-border-radius-pill) !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}.z-n1{z-index:-1 !important}.z-0{z-index:0 !important}.z-1{z-index:1 !important}.z-2{z-index:2 !important}.z-3{z-index:3 !important}@media (min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.object-fit-sm-contain{object-fit:contain !important}.object-fit-sm-cover{object-fit:cover !important}.object-fit-sm-fill{object-fit:fill !important}.object-fit-sm-scale{object-fit:scale-down !important}.object-fit-sm-none{object-fit:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-inline-grid{display:inline-grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.25rem !important}.m-sm-2{margin:.5rem !important}.m-sm-3{margin:1rem !important}.m-sm-4{margin:1.5rem !important}.m-sm-5{margin:3rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-sm-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-sm-3{margin-right:1rem !important;margin-left:1rem !important}.mx-sm-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-sm-5{margin-right:3rem !important;margin-left:3rem !important}.mx-sm-auto{margin-right:auto !important;margin-left:auto !important}.my-sm-0{margin-top:0 !important;margin-bottom:0 !important}.my-sm-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-sm-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-sm-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-sm-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-sm-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.25rem !important}.mt-sm-2{margin-top:.5rem !important}.mt-sm-3{margin-top:1rem !important}.mt-sm-4{margin-top:1.5rem !important}.mt-sm-5{margin-top:3rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.25rem !important}.me-sm-2{margin-right:.5rem !important}.me-sm-3{margin-right:1rem !important}.me-sm-4{margin-right:1.5rem !important}.me-sm-5{margin-right:3rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.25rem !important}.mb-sm-2{margin-bottom:.5rem !important}.mb-sm-3{margin-bottom:1rem !important}.mb-sm-4{margin-bottom:1.5rem !important}.mb-sm-5{margin-bottom:3rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.25rem !important}.ms-sm-2{margin-left:.5rem !important}.ms-sm-3{margin-left:1rem !important}.ms-sm-4{margin-left:1.5rem !important}.ms-sm-5{margin-left:3rem !important}.ms-sm-auto{margin-left:auto !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.25rem !important}.p-sm-2{padding:.5rem !important}.p-sm-3{padding:1rem !important}.p-sm-4{padding:1.5rem !important}.p-sm-5{padding:3rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-sm-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-sm-3{padding-right:1rem !important;padding-left:1rem !important}.px-sm-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-sm-5{padding-right:3rem !important;padding-left:3rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-sm-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-sm-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-sm-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-sm-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.25rem !important}.pt-sm-2{padding-top:.5rem !important}.pt-sm-3{padding-top:1rem !important}.pt-sm-4{padding-top:1.5rem !important}.pt-sm-5{padding-top:3rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.25rem !important}.pe-sm-2{padding-right:.5rem !important}.pe-sm-3{padding-right:1rem !important}.pe-sm-4{padding-right:1.5rem !important}.pe-sm-5{padding-right:3rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.25rem !important}.pb-sm-2{padding-bottom:.5rem !important}.pb-sm-3{padding-bottom:1rem !important}.pb-sm-4{padding-bottom:1.5rem !important}.pb-sm-5{padding-bottom:3rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.25rem !important}.ps-sm-2{padding-left:.5rem !important}.ps-sm-3{padding-left:1rem !important}.ps-sm-4{padding-left:1.5rem !important}.ps-sm-5{padding-left:3rem !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.25rem !important}.gap-sm-2{gap:.5rem !important}.gap-sm-3{gap:1rem !important}.gap-sm-4{gap:1.5rem !important}.gap-sm-5{gap:3rem !important}.row-gap-sm-0{row-gap:0 !important}.row-gap-sm-1{row-gap:.25rem !important}.row-gap-sm-2{row-gap:.5rem !important}.row-gap-sm-3{row-gap:1rem !important}.row-gap-sm-4{row-gap:1.5rem !important}.row-gap-sm-5{row-gap:3rem !important}.column-gap-sm-0{column-gap:0 !important}.column-gap-sm-1{column-gap:.25rem !important}.column-gap-sm-2{column-gap:.5rem !important}.column-gap-sm-3{column-gap:1rem !important}.column-gap-sm-4{column-gap:1.5rem !important}.column-gap-sm-5{column-gap:3rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media (min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.object-fit-md-contain{object-fit:contain !important}.object-fit-md-cover{object-fit:cover !important}.object-fit-md-fill{object-fit:fill !important}.object-fit-md-scale{object-fit:scale-down !important}.object-fit-md-none{object-fit:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-inline-grid{display:inline-grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.25rem !important}.m-md-2{margin:.5rem !important}.m-md-3{margin:1rem !important}.m-md-4{margin:1.5rem !important}.m-md-5{margin:3rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-md-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-md-3{margin-right:1rem !important;margin-left:1rem !important}.mx-md-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-md-5{margin-right:3rem !important;margin-left:3rem !important}.mx-md-auto{margin-right:auto !important;margin-left:auto !important}.my-md-0{margin-top:0 !important;margin-bottom:0 !important}.my-md-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-md-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-md-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-md-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-md-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.25rem !important}.mt-md-2{margin-top:.5rem !important}.mt-md-3{margin-top:1rem !important}.mt-md-4{margin-top:1.5rem !important}.mt-md-5{margin-top:3rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.25rem !important}.me-md-2{margin-right:.5rem !important}.me-md-3{margin-right:1rem !important}.me-md-4{margin-right:1.5rem !important}.me-md-5{margin-right:3rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.25rem !important}.mb-md-2{margin-bottom:.5rem !important}.mb-md-3{margin-bottom:1rem !important}.mb-md-4{margin-bottom:1.5rem !important}.mb-md-5{margin-bottom:3rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.25rem !important}.ms-md-2{margin-left:.5rem !important}.ms-md-3{margin-left:1rem !important}.ms-md-4{margin-left:1.5rem !important}.ms-md-5{margin-left:3rem !important}.ms-md-auto{margin-left:auto !important}.p-md-0{padding:0 !important}.p-md-1{padding:.25rem !important}.p-md-2{padding:.5rem !important}.p-md-3{padding:1rem !important}.p-md-4{padding:1.5rem !important}.p-md-5{padding:3rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-md-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-md-3{padding-right:1rem !important;padding-left:1rem !important}.px-md-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-md-5{padding-right:3rem !important;padding-left:3rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-md-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-md-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-md-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-md-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.25rem !important}.pt-md-2{padding-top:.5rem !important}.pt-md-3{padding-top:1rem !important}.pt-md-4{padding-top:1.5rem !important}.pt-md-5{padding-top:3rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.25rem !important}.pe-md-2{padding-right:.5rem !important}.pe-md-3{padding-right:1rem !important}.pe-md-4{padding-right:1.5rem !important}.pe-md-5{padding-right:3rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.25rem !important}.pb-md-2{padding-bottom:.5rem !important}.pb-md-3{padding-bottom:1rem !important}.pb-md-4{padding-bottom:1.5rem !important}.pb-md-5{padding-bottom:3rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.25rem !important}.ps-md-2{padding-left:.5rem !important}.ps-md-3{padding-left:1rem !important}.ps-md-4{padding-left:1.5rem !important}.ps-md-5{padding-left:3rem !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.25rem !important}.gap-md-2{gap:.5rem !important}.gap-md-3{gap:1rem !important}.gap-md-4{gap:1.5rem !important}.gap-md-5{gap:3rem !important}.row-gap-md-0{row-gap:0 !important}.row-gap-md-1{row-gap:.25rem !important}.row-gap-md-2{row-gap:.5rem !important}.row-gap-md-3{row-gap:1rem !important}.row-gap-md-4{row-gap:1.5rem !important}.row-gap-md-5{row-gap:3rem !important}.column-gap-md-0{column-gap:0 !important}.column-gap-md-1{column-gap:.25rem !important}.column-gap-md-2{column-gap:.5rem !important}.column-gap-md-3{column-gap:1rem !important}.column-gap-md-4{column-gap:1.5rem !important}.column-gap-md-5{column-gap:3rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media (min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.object-fit-lg-contain{object-fit:contain !important}.object-fit-lg-cover{object-fit:cover !important}.object-fit-lg-fill{object-fit:fill !important}.object-fit-lg-scale{object-fit:scale-down !important}.object-fit-lg-none{object-fit:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-inline-grid{display:inline-grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.25rem !important}.m-lg-2{margin:.5rem !important}.m-lg-3{margin:1rem !important}.m-lg-4{margin:1.5rem !important}.m-lg-5{margin:3rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-lg-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-lg-3{margin-right:1rem !important;margin-left:1rem !important}.mx-lg-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-lg-5{margin-right:3rem !important;margin-left:3rem !important}.mx-lg-auto{margin-right:auto !important;margin-left:auto !important}.my-lg-0{margin-top:0 !important;margin-bottom:0 !important}.my-lg-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-lg-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-lg-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-lg-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-lg-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.25rem !important}.mt-lg-2{margin-top:.5rem !important}.mt-lg-3{margin-top:1rem !important}.mt-lg-4{margin-top:1.5rem !important}.mt-lg-5{margin-top:3rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.25rem !important}.me-lg-2{margin-right:.5rem !important}.me-lg-3{margin-right:1rem !important}.me-lg-4{margin-right:1.5rem !important}.me-lg-5{margin-right:3rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.25rem !important}.mb-lg-2{margin-bottom:.5rem !important}.mb-lg-3{margin-bottom:1rem !important}.mb-lg-4{margin-bottom:1.5rem !important}.mb-lg-5{margin-bottom:3rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.25rem !important}.ms-lg-2{margin-left:.5rem !important}.ms-lg-3{margin-left:1rem !important}.ms-lg-4{margin-left:1.5rem !important}.ms-lg-5{margin-left:3rem !important}.ms-lg-auto{margin-left:auto !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.25rem !important}.p-lg-2{padding:.5rem !important}.p-lg-3{padding:1rem !important}.p-lg-4{padding:1.5rem !important}.p-lg-5{padding:3rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-lg-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-lg-3{padding-right:1rem !important;padding-left:1rem !important}.px-lg-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-lg-5{padding-right:3rem !important;padding-left:3rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-lg-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-lg-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-lg-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-lg-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.25rem !important}.pt-lg-2{padding-top:.5rem !important}.pt-lg-3{padding-top:1rem !important}.pt-lg-4{padding-top:1.5rem !important}.pt-lg-5{padding-top:3rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.25rem !important}.pe-lg-2{padding-right:.5rem !important}.pe-lg-3{padding-right:1rem !important}.pe-lg-4{padding-right:1.5rem !important}.pe-lg-5{padding-right:3rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.25rem !important}.pb-lg-2{padding-bottom:.5rem !important}.pb-lg-3{padding-bottom:1rem !important}.pb-lg-4{padding-bottom:1.5rem !important}.pb-lg-5{padding-bottom:3rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.25rem !important}.ps-lg-2{padding-left:.5rem !important}.ps-lg-3{padding-left:1rem !important}.ps-lg-4{padding-left:1.5rem !important}.ps-lg-5{padding-left:3rem !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.25rem !important}.gap-lg-2{gap:.5rem !important}.gap-lg-3{gap:1rem !important}.gap-lg-4{gap:1.5rem !important}.gap-lg-5{gap:3rem !important}.row-gap-lg-0{row-gap:0 !important}.row-gap-lg-1{row-gap:.25rem !important}.row-gap-lg-2{row-gap:.5rem !important}.row-gap-lg-3{row-gap:1rem !important}.row-gap-lg-4{row-gap:1.5rem !important}.row-gap-lg-5{row-gap:3rem !important}.column-gap-lg-0{column-gap:0 !important}.column-gap-lg-1{column-gap:.25rem !important}.column-gap-lg-2{column-gap:.5rem !important}.column-gap-lg-3{column-gap:1rem !important}.column-gap-lg-4{column-gap:1.5rem !important}.column-gap-lg-5{column-gap:3rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media (min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.object-fit-xl-contain{object-fit:contain !important}.object-fit-xl-cover{object-fit:cover !important}.object-fit-xl-fill{object-fit:fill !important}.object-fit-xl-scale{object-fit:scale-down !important}.object-fit-xl-none{object-fit:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-inline-grid{display:inline-grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.25rem !important}.m-xl-2{margin:.5rem !important}.m-xl-3{margin:1rem !important}.m-xl-4{margin:1.5rem !important}.m-xl-5{margin:3rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xl-auto{margin-right:auto !important;margin-left:auto !important}.my-xl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.25rem !important}.mt-xl-2{margin-top:.5rem !important}.mt-xl-3{margin-top:1rem !important}.mt-xl-4{margin-top:1.5rem !important}.mt-xl-5{margin-top:3rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.25rem !important}.me-xl-2{margin-right:.5rem !important}.me-xl-3{margin-right:1rem !important}.me-xl-4{margin-right:1.5rem !important}.me-xl-5{margin-right:3rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.25rem !important}.mb-xl-2{margin-bottom:.5rem !important}.mb-xl-3{margin-bottom:1rem !important}.mb-xl-4{margin-bottom:1.5rem !important}.mb-xl-5{margin-bottom:3rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.25rem !important}.ms-xl-2{margin-left:.5rem !important}.ms-xl-3{margin-left:1rem !important}.ms-xl-4{margin-left:1.5rem !important}.ms-xl-5{margin-left:3rem !important}.ms-xl-auto{margin-left:auto !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.25rem !important}.p-xl-2{padding:.5rem !important}.p-xl-3{padding:1rem !important}.p-xl-4{padding:1.5rem !important}.p-xl-5{padding:3rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.25rem !important}.pt-xl-2{padding-top:.5rem !important}.pt-xl-3{padding-top:1rem !important}.pt-xl-4{padding-top:1.5rem !important}.pt-xl-5{padding-top:3rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.25rem !important}.pe-xl-2{padding-right:.5rem !important}.pe-xl-3{padding-right:1rem !important}.pe-xl-4{padding-right:1.5rem !important}.pe-xl-5{padding-right:3rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.25rem !important}.pb-xl-2{padding-bottom:.5rem !important}.pb-xl-3{padding-bottom:1rem !important}.pb-xl-4{padding-bottom:1.5rem !important}.pb-xl-5{padding-bottom:3rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.25rem !important}.ps-xl-2{padding-left:.5rem !important}.ps-xl-3{padding-left:1rem !important}.ps-xl-4{padding-left:1.5rem !important}.ps-xl-5{padding-left:3rem !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.25rem !important}.gap-xl-2{gap:.5rem !important}.gap-xl-3{gap:1rem !important}.gap-xl-4{gap:1.5rem !important}.gap-xl-5{gap:3rem !important}.row-gap-xl-0{row-gap:0 !important}.row-gap-xl-1{row-gap:.25rem !important}.row-gap-xl-2{row-gap:.5rem !important}.row-gap-xl-3{row-gap:1rem !important}.row-gap-xl-4{row-gap:1.5rem !important}.row-gap-xl-5{row-gap:3rem !important}.column-gap-xl-0{column-gap:0 !important}.column-gap-xl-1{column-gap:.25rem !important}.column-gap-xl-2{column-gap:.5rem !important}.column-gap-xl-3{column-gap:1rem !important}.column-gap-xl-4{column-gap:1.5rem !important}.column-gap-xl-5{column-gap:3rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media (min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.object-fit-xxl-contain{object-fit:contain !important}.object-fit-xxl-cover{object-fit:cover !important}.object-fit-xxl-fill{object-fit:fill !important}.object-fit-xxl-scale{object-fit:scale-down !important}.object-fit-xxl-none{object-fit:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-inline-grid{display:inline-grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.25rem !important}.m-xxl-2{margin:.5rem !important}.m-xxl-3{margin:1rem !important}.m-xxl-4{margin:1.5rem !important}.m-xxl-5{margin:3rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xxl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xxl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xxl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xxl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xxl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xxl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xxl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xxl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.25rem !important}.mt-xxl-2{margin-top:.5rem !important}.mt-xxl-3{margin-top:1rem !important}.mt-xxl-4{margin-top:1.5rem !important}.mt-xxl-5{margin-top:3rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.25rem !important}.me-xxl-2{margin-right:.5rem !important}.me-xxl-3{margin-right:1rem !important}.me-xxl-4{margin-right:1.5rem !important}.me-xxl-5{margin-right:3rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.25rem !important}.mb-xxl-2{margin-bottom:.5rem !important}.mb-xxl-3{margin-bottom:1rem !important}.mb-xxl-4{margin-bottom:1.5rem !important}.mb-xxl-5{margin-bottom:3rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.25rem !important}.ms-xxl-2{margin-left:.5rem !important}.ms-xxl-3{margin-left:1rem !important}.ms-xxl-4{margin-left:1.5rem !important}.ms-xxl-5{margin-left:3rem !important}.ms-xxl-auto{margin-left:auto !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.25rem !important}.p-xxl-2{padding:.5rem !important}.p-xxl-3{padding:1rem !important}.p-xxl-4{padding:1.5rem !important}.p-xxl-5{padding:3rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xxl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xxl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xxl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xxl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xxl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xxl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xxl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xxl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.25rem !important}.pt-xxl-2{padding-top:.5rem !important}.pt-xxl-3{padding-top:1rem !important}.pt-xxl-4{padding-top:1.5rem !important}.pt-xxl-5{padding-top:3rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.25rem !important}.pe-xxl-2{padding-right:.5rem !important}.pe-xxl-3{padding-right:1rem !important}.pe-xxl-4{padding-right:1.5rem !important}.pe-xxl-5{padding-right:3rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.25rem !important}.pb-xxl-2{padding-bottom:.5rem !important}.pb-xxl-3{padding-bottom:1rem !important}.pb-xxl-4{padding-bottom:1.5rem !important}.pb-xxl-5{padding-bottom:3rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.25rem !important}.ps-xxl-2{padding-left:.5rem !important}.ps-xxl-3{padding-left:1rem !important}.ps-xxl-4{padding-left:1.5rem !important}.ps-xxl-5{padding-left:3rem !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.25rem !important}.gap-xxl-2{gap:.5rem !important}.gap-xxl-3{gap:1rem !important}.gap-xxl-4{gap:1.5rem !important}.gap-xxl-5{gap:3rem !important}.row-gap-xxl-0{row-gap:0 !important}.row-gap-xxl-1{row-gap:.25rem !important}.row-gap-xxl-2{row-gap:.5rem !important}.row-gap-xxl-3{row-gap:1rem !important}.row-gap-xxl-4{row-gap:1.5rem !important}.row-gap-xxl-5{row-gap:3rem !important}.column-gap-xxl-0{column-gap:0 !important}.column-gap-xxl-1{column-gap:.25rem !important}.column-gap-xxl-2{column-gap:.5rem !important}.column-gap-xxl-3{column-gap:1rem !important}.column-gap-xxl-4{column-gap:1.5rem !important}.column-gap-xxl-5{column-gap:3rem !important}.text-xxl-start{text-align:left !important}.text-xxl-end{text-align:right !important}.text-xxl-center{text-align:center !important}}.bg-default{color:#000}.bg-primary{color:#fff}.bg-secondary{color:#fff}.bg-success{color:#fff}.bg-info{color:#000}.bg-warning{color:#000}.bg-danger{color:#fff}.bg-light{color:#000}.bg-dark{color:#fff}@media (min-width: 1200px){.fs-1{font-size:2.5rem !important}.fs-2{font-size:2rem !important}.fs-3{font-size:1.75rem !important}.fs-4{font-size:1.5rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-inline-grid{display:inline-grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}.table th[align=left]{text-align:left}.table th[align=right]{text-align:right}.table th[align=center]{text-align:center}:root{--bslib-spacer: 1rem;--bslib-mb-spacer: var(--bslib-spacer, 1rem)}.bslib-mb-spacing{margin-bottom:var(--bslib-mb-spacer)}.bslib-gap-spacing{gap:var(--bslib-mb-spacer)}.bslib-gap-spacing>.bslib-mb-spacing,.bslib-gap-spacing>.form-group,.bslib-gap-spacing>p,.bslib-gap-spacing>pre,.bslib-gap-spacing>.shiny-html-output>.bslib-mb-spacing,.bslib-gap-spacing>.shiny-html-output>.form-group,.bslib-gap-spacing>.shiny-html-output>p,.bslib-gap-spacing>.shiny-html-output>pre,.bslib-gap-spacing>.shiny-panel-conditional>.bslib-mb-spacing,.bslib-gap-spacing>.shiny-panel-conditional>.form-group,.bslib-gap-spacing>.shiny-panel-conditional>p,.bslib-gap-spacing>.shiny-panel-conditional>pre{margin-bottom:0}.html-fill-container>.html-fill-item.bslib-mb-spacing{margin-bottom:0}.tab-content>.tab-pane.html-fill-container{display:none}.tab-content>.active.html-fill-container{display:flex}.tab-content.html-fill-container{padding:0}.bg-blue{--bslib-color-bg: #0d6efd;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-blue{--bslib-color-fg: #0d6efd;color:var(--bslib-color-fg)}.bg-indigo{--bslib-color-bg: #6610f2;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-indigo{--bslib-color-fg: #6610f2;color:var(--bslib-color-fg)}.bg-purple{--bslib-color-bg: #6f42c1;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-purple{--bslib-color-fg: #6f42c1;color:var(--bslib-color-fg)}.bg-pink{--bslib-color-bg: #d63384;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-pink{--bslib-color-fg: #d63384;color:var(--bslib-color-fg)}.bg-red{--bslib-color-bg: #dc3545;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-red{--bslib-color-fg: #dc3545;color:var(--bslib-color-fg)}.bg-orange{--bslib-color-bg: #fd7e14;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-orange{--bslib-color-fg: #fd7e14;color:var(--bslib-color-fg)}.bg-yellow{--bslib-color-bg: #ffc107;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-yellow{--bslib-color-fg: #ffc107;color:var(--bslib-color-fg)}.bg-green{--bslib-color-bg: #198754;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-green{--bslib-color-fg: #198754;color:var(--bslib-color-fg)}.bg-teal{--bslib-color-bg: #20c997;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-teal{--bslib-color-fg: #20c997;color:var(--bslib-color-fg)}.bg-cyan{--bslib-color-bg: #0dcaf0;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-cyan{--bslib-color-fg: #0dcaf0;color:var(--bslib-color-fg)}.text-default{--bslib-color-fg: #dee2e6}.bg-default{--bslib-color-bg: #dee2e6;--bslib-color-fg: #000}.text-primary{--bslib-color-fg: #BF281B}.bg-primary{--bslib-color-bg: #BF281B;--bslib-color-fg: #fff}.text-secondary{--bslib-color-fg: #6c757d}.bg-secondary{--bslib-color-bg: #6c757d;--bslib-color-fg: #fff}.text-success{--bslib-color-fg: #198754}.bg-success{--bslib-color-bg: #198754;--bslib-color-fg: #fff}.text-info{--bslib-color-fg: #0dcaf0}.bg-info{--bslib-color-bg: #0dcaf0;--bslib-color-fg: #000}.text-warning{--bslib-color-fg: #ffc107}.bg-warning{--bslib-color-bg: #ffc107;--bslib-color-fg: #000}.text-danger{--bslib-color-fg: #dc3545}.bg-danger{--bslib-color-bg: #dc3545;--bslib-color-fg: #fff}.text-light{--bslib-color-fg: #f8f9fa}.bg-light{--bslib-color-bg: #f8f9fa;--bslib-color-fg: #000}.text-dark{--bslib-color-fg: #212529}.bg-dark{--bslib-color-bg: #212529;--bslib-color-fg: #fff}.bg-gradient-blue-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #3148f9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #3148f9;color:#fff}.bg-gradient-blue-purple{--bslib-color-fg: #fff;--bslib-color-bg: #345ce5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #345ce5;color:#fff}.bg-gradient-blue-pink{--bslib-color-fg: #fff;--bslib-color-bg: #5d56cd;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #5d56cd;color:#fff}.bg-gradient-blue-red{--bslib-color-fg: #fff;--bslib-color-bg: #6057b3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #6057b3;color:#fff}.bg-gradient-blue-orange{--bslib-color-fg: #fff;--bslib-color-bg: #6d74a0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #6d74a0;color:#fff}.bg-gradient-blue-yellow{--bslib-color-fg: #000;--bslib-color-bg: #6e8f9b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #6e8f9b;color:#000}.bg-gradient-blue-green{--bslib-color-fg: #fff;--bslib-color-bg: #1278b9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #1278b9;color:#fff}.bg-gradient-blue-teal{--bslib-color-fg: #000;--bslib-color-bg: #1592d4;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #1592d4;color:#000}.bg-gradient-blue-cyan{--bslib-color-fg: #000;--bslib-color-bg: #0d93f8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #0d93f8;color:#000}.bg-gradient-indigo-blue{--bslib-color-fg: #fff;--bslib-color-bg: #4236f6;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #4236f6;color:#fff}.bg-gradient-indigo-purple{--bslib-color-fg: #fff;--bslib-color-bg: #6a24de;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #6a24de;color:#fff}.bg-gradient-indigo-pink{--bslib-color-fg: #fff;--bslib-color-bg: #931ec6;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #931ec6;color:#fff}.bg-gradient-indigo-red{--bslib-color-fg: #fff;--bslib-color-bg: #951fad;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #951fad;color:#fff}.bg-gradient-indigo-orange{--bslib-color-fg: #fff;--bslib-color-bg: #a23c99;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #a23c99;color:#fff}.bg-gradient-indigo-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #a35794;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #a35794;color:#fff}.bg-gradient-indigo-green{--bslib-color-fg: #fff;--bslib-color-bg: #4740b3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #4740b3;color:#fff}.bg-gradient-indigo-teal{--bslib-color-fg: #fff;--bslib-color-bg: #4a5ace;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #4a5ace;color:#fff}.bg-gradient-indigo-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #425af1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #425af1;color:#fff}.bg-gradient-purple-blue{--bslib-color-fg: #fff;--bslib-color-bg: #4854d9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #4854d9;color:#fff}.bg-gradient-purple-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #6b2ed5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #6b2ed5;color:#fff}.bg-gradient-purple-pink{--bslib-color-fg: #fff;--bslib-color-bg: #983ca9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #983ca9;color:#fff}.bg-gradient-purple-red{--bslib-color-fg: #fff;--bslib-color-bg: #9b3d8f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #9b3d8f;color:#fff}.bg-gradient-purple-orange{--bslib-color-fg: #fff;--bslib-color-bg: #a85a7c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #a85a7c;color:#fff}.bg-gradient-purple-yellow{--bslib-color-fg: #000;--bslib-color-bg: #a97577;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #a97577;color:#000}.bg-gradient-purple-green{--bslib-color-fg: #fff;--bslib-color-bg: #4d5e95;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #4d5e95;color:#fff}.bg-gradient-purple-teal{--bslib-color-fg: #fff;--bslib-color-bg: #4f78b0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #4f78b0;color:#fff}.bg-gradient-purple-cyan{--bslib-color-fg: #000;--bslib-color-bg: #4878d4;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #4878d4;color:#000}.bg-gradient-pink-blue{--bslib-color-fg: #fff;--bslib-color-bg: #864bb4;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #864bb4;color:#fff}.bg-gradient-pink-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #a925b0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #a925b0;color:#fff}.bg-gradient-pink-purple{--bslib-color-fg: #fff;--bslib-color-bg: #ad399c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #ad399c;color:#fff}.bg-gradient-pink-red{--bslib-color-fg: #fff;--bslib-color-bg: #d8346b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #d8346b;color:#fff}.bg-gradient-pink-orange{--bslib-color-fg: #000;--bslib-color-bg: #e65157;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #e65157;color:#000}.bg-gradient-pink-yellow{--bslib-color-fg: #000;--bslib-color-bg: #e66c52;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #e66c52;color:#000}.bg-gradient-pink-green{--bslib-color-fg: #fff;--bslib-color-bg: #8a5571;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #8a5571;color:#fff}.bg-gradient-pink-teal{--bslib-color-fg: #000;--bslib-color-bg: #8d6f8c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #8d6f8c;color:#000}.bg-gradient-pink-cyan{--bslib-color-fg: #000;--bslib-color-bg: #866faf;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #866faf;color:#000}.bg-gradient-red-blue{--bslib-color-fg: #fff;--bslib-color-bg: #894c8f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #894c8f;color:#fff}.bg-gradient-red-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #ad268a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #ad268a;color:#fff}.bg-gradient-red-purple{--bslib-color-fg: #fff;--bslib-color-bg: #b03a77;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #b03a77;color:#fff}.bg-gradient-red-pink{--bslib-color-fg: #fff;--bslib-color-bg: #da345e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #da345e;color:#fff}.bg-gradient-red-orange{--bslib-color-fg: #000;--bslib-color-bg: #e95231;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #e95231;color:#000}.bg-gradient-red-yellow{--bslib-color-fg: #000;--bslib-color-bg: #ea6d2c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #ea6d2c;color:#000}.bg-gradient-red-green{--bslib-color-fg: #fff;--bslib-color-bg: #8e564b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #8e564b;color:#fff}.bg-gradient-red-teal{--bslib-color-fg: #000;--bslib-color-bg: #917066;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #917066;color:#000}.bg-gradient-red-cyan{--bslib-color-fg: #000;--bslib-color-bg: #897189;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #897189;color:#000}.bg-gradient-orange-blue{--bslib-color-fg: #000;--bslib-color-bg: #9d7871;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #9d7871;color:#000}.bg-gradient-orange-indigo{--bslib-color-fg: #000;--bslib-color-bg: #c1526d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #c1526d;color:#000}.bg-gradient-orange-purple{--bslib-color-fg: #000;--bslib-color-bg: #c46659;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #c46659;color:#000}.bg-gradient-orange-pink{--bslib-color-fg: #000;--bslib-color-bg: #ed6041;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #ed6041;color:#000}.bg-gradient-orange-red{--bslib-color-fg: #000;--bslib-color-bg: #f06128;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #f06128;color:#000}.bg-gradient-orange-yellow{--bslib-color-fg: #000;--bslib-color-bg: #fe990f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #fe990f;color:#000}.bg-gradient-orange-green{--bslib-color-fg: #000;--bslib-color-bg: #a2822e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #a2822e;color:#000}.bg-gradient-orange-teal{--bslib-color-fg: #000;--bslib-color-bg: #a59c48;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #a59c48;color:#000}.bg-gradient-orange-cyan{--bslib-color-fg: #000;--bslib-color-bg: #9d9c6c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #9d9c6c;color:#000}.bg-gradient-yellow-blue{--bslib-color-fg: #000;--bslib-color-bg: #9ea069;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #9ea069;color:#000}.bg-gradient-yellow-indigo{--bslib-color-fg: #000;--bslib-color-bg: #c27a65;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #c27a65;color:#000}.bg-gradient-yellow-purple{--bslib-color-fg: #000;--bslib-color-bg: #c58e51;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #c58e51;color:#000}.bg-gradient-yellow-pink{--bslib-color-fg: #000;--bslib-color-bg: #ef8839;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #ef8839;color:#000}.bg-gradient-yellow-red{--bslib-color-fg: #000;--bslib-color-bg: #f18920;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #f18920;color:#000}.bg-gradient-yellow-orange{--bslib-color-fg: #000;--bslib-color-bg: #fea60c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #fea60c;color:#000}.bg-gradient-yellow-green{--bslib-color-fg: #000;--bslib-color-bg: #a3aa26;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #a3aa26;color:#000}.bg-gradient-yellow-teal{--bslib-color-fg: #000;--bslib-color-bg: #a6c441;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #a6c441;color:#000}.bg-gradient-yellow-cyan{--bslib-color-fg: #000;--bslib-color-bg: #9ec564;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #9ec564;color:#000}.bg-gradient-green-blue{--bslib-color-fg: #fff;--bslib-color-bg: #147d98;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #147d98;color:#fff}.bg-gradient-green-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #385793;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #385793;color:#fff}.bg-gradient-green-purple{--bslib-color-fg: #fff;--bslib-color-bg: #3b6b80;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #3b6b80;color:#fff}.bg-gradient-green-pink{--bslib-color-fg: #fff;--bslib-color-bg: #656567;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #656567;color:#fff}.bg-gradient-green-red{--bslib-color-fg: #fff;--bslib-color-bg: #67664e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #67664e;color:#fff}.bg-gradient-green-orange{--bslib-color-fg: #000;--bslib-color-bg: #74833a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #74833a;color:#000}.bg-gradient-green-yellow{--bslib-color-fg: #000;--bslib-color-bg: #759e35;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #759e35;color:#000}.bg-gradient-green-teal{--bslib-color-fg: #000;--bslib-color-bg: #1ca16f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #1ca16f;color:#000}.bg-gradient-green-cyan{--bslib-color-fg: #000;--bslib-color-bg: #14a292;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #14a292;color:#000}.bg-gradient-teal-blue{--bslib-color-fg: #000;--bslib-color-bg: #18a5c0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #18a5c0;color:#000}.bg-gradient-teal-indigo{--bslib-color-fg: #000;--bslib-color-bg: #3c7fbb;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #3c7fbb;color:#000}.bg-gradient-teal-purple{--bslib-color-fg: #000;--bslib-color-bg: #4093a8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #4093a8;color:#000}.bg-gradient-teal-pink{--bslib-color-fg: #000;--bslib-color-bg: #698d8f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #698d8f;color:#000}.bg-gradient-teal-red{--bslib-color-fg: #000;--bslib-color-bg: #6b8e76;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #6b8e76;color:#000}.bg-gradient-teal-orange{--bslib-color-fg: #000;--bslib-color-bg: #78ab63;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #78ab63;color:#000}.bg-gradient-teal-yellow{--bslib-color-fg: #000;--bslib-color-bg: #79c65d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #79c65d;color:#000}.bg-gradient-teal-green{--bslib-color-fg: #000;--bslib-color-bg: #1daf7c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #1daf7c;color:#000}.bg-gradient-teal-cyan{--bslib-color-fg: #000;--bslib-color-bg: #18c9bb;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #18c9bb;color:#000}.bg-gradient-cyan-blue{--bslib-color-fg: #000;--bslib-color-bg: #0da5f5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #0da5f5;color:#000}.bg-gradient-cyan-indigo{--bslib-color-fg: #000;--bslib-color-bg: #3180f1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #3180f1;color:#000}.bg-gradient-cyan-purple{--bslib-color-fg: #000;--bslib-color-bg: #3494dd;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #3494dd;color:#000}.bg-gradient-cyan-pink{--bslib-color-fg: #000;--bslib-color-bg: #5d8ec5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #5d8ec5;color:#000}.bg-gradient-cyan-red{--bslib-color-fg: #000;--bslib-color-bg: #608eac;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #608eac;color:#000}.bg-gradient-cyan-orange{--bslib-color-fg: #000;--bslib-color-bg: #6dac98;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #6dac98;color:#000}.bg-gradient-cyan-yellow{--bslib-color-fg: #000;--bslib-color-bg: #6ec693;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #6ec693;color:#000}.bg-gradient-cyan-green{--bslib-color-fg: #000;--bslib-color-bg: #12afb2;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #12afb2;color:#000}.bg-gradient-cyan-teal{--bslib-color-fg: #000;--bslib-color-bg: #15cacc;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #15cacc;color:#000}.row>main{max-width:50rem}@media (min-width: 1200px) and (max-width: 1399.98px){.container .row{justify-content:space-evenly}}@media (min-width: 1400px){body{font-size:18px}.col-md-3{margin-left:5rem}}.navbar-nav .nav-item>.nav-link{border-radius:.375rem;padding:0.5rem}.navbar>.container{align-items:baseline;-webkit-align-items:baseline}.navbar-light .navbar-nav .active>.nav-link{background:#e9ecef;color:#212529}.navbar-dark .navbar-nav .active>.nav-link{background:#343a40;color:#fff}.navbar-dark .navbar-nav .nav-item>.nav-link:hover,.navbar-light .navbar-nav .nav-item>.nav-link:hover{background:rgba(191,40,27,0.1)}.navbar-dark input[type="search"]{border-color:#6c757d;background-color:#212529;color:#e9ecef}input[type="search"]{border-color:#dee2e6;width:12rem}.headroom{will-change:transform;transition:transform 400ms ease}.headroom--pinned{transform:translateY(0%)}.headroom--unpinned{transform:translateY(-100%)}.row>main,.row>aside{margin-top:56px}html,body{scroll-padding:56px}@media (min-width: 576px){#toc{position:sticky;top:56px;max-height:calc(100vh - 56px - 1rem);overflow-y:auto}}aside h2,aside .h2{margin-top:1.5rem;font-size:1.25rem}aside .roles{color:#4d5154}aside .list-unstyled li{margin-bottom:0.5rem}aside .dev-status .list-unstyled li{margin-bottom:0.1rem}@media (max-width: 575.98px){aside{margin:0.5rem;width:calc(100vw - 1rem);background-color:#f8f9fa;border-color:#dee2e6;border-radius:.375rem}aside h2:first-child,aside .h2:first-child{margin-top:1rem}}body{position:relative}#toc>.nav{margin-bottom:1rem}#toc>.nav a.nav-link{color:inherit;padding:0.25rem 0.5rem;margin-bottom:2px;border-radius:.375rem;border:0 solid #dee2e6}#toc>.nav a.nav-link:hover,#toc>.nav a.nav-link:focus{background-color:rgba(191,40,27,0.1);color:#000}#toc>.nav a.nav-link.active{background-color:#e9e9ea;color:#000}#toc>.nav .nav a.nav-link{margin-left:0.5rem}#toc>.nav .nav{display:none !important}#toc>.nav a.active+.nav{display:flex !important}footer{margin:1rem 0 1rem 0;font-size:.875em;border-top:1px solid #dee2e6;background:rgba(0,0,0,0);color:#4d5154;display:flex;column-gap:1rem}@media (max-width: 575.98px){footer{flex-direction:column}}@media (min-width: 576px){footer .pkgdown-footer-right{text-align:right}}footer div{flex:1 1 auto}html,body{height:100%}body>.container{min-height:100%;display:flex;flex-direction:column}body>.container .row{flex:1 0 auto}::selection{background-color:#f2d4d1}main img{max-width:100%;height:auto}main table{display:block;overflow:auto}body{font-display:fallback}.page-header{border-bottom:1px solid #dee2e6;padding-bottom:0.5rem;margin-bottom:0.5rem;margin-top:1.5rem}dd{margin-left:1.5rem}summary{margin-bottom:0.5rem}details{margin-bottom:1rem}.html-widget{margin-bottom:1rem}a.anchor{display:none;margin-left:5px;width:Min(0.9em, 20px);height:Min(0.9em, 20px);background-image:url(../../link.svg);background-repeat:no-repeat;background-size:Min(0.9em, 20px) Min(0.9em, 20px);background-position:center center}h2:hover .anchor,.h2:hover .anchor,h3:hover .anchor,.h3:hover .anchor,h4:hover .anchor,.h4:hover .anchor,h5:hover .anchor,.h5:hover .anchor,h6:hover .anchor,.h6:hover .anchor{display:inline-block}.orcid{color:#A6CE39;margin-right:4px}.fab{font-family:"Font Awesome 5 Brands" !important}img.logo{float:right;width:100px;margin-left:30px}.template-home img.logo{width:120px}@media (max-width: 575.98px){img.logo{width:80px}}@media (min-width: 576px){.page-header{min-height:88px}.template-home .page-header{min-height:104px}}.line-block{margin-bottom:1rem}.template-reference-index dt{font-weight:normal}.template-reference-index code{word-wrap:normal}.icon{float:right}.icon img{width:40px}a.footnote-ref{cursor:pointer}.popover{width:Min(100vw, 32rem);font-size:0.9rem;box-shadow:4px 4px 8px rgba(0,0,0,0.3)}.popover-body{padding:0.75rem}.popover-body p:last-child{margin-bottom:0}.tab-content{padding:1rem}.tabset-pills .tab-content{border:solid 1px #e5e5e5}.tab-content{display:flex}.tab-content>.tab-pane{display:block;visibility:hidden;margin-right:-100%;width:100%}.tab-content>.active{visibility:visible}div.csl-entry{clear:both}.hanging-indent div.csl-entry{margin-left:2em;text-indent:-2em}div.csl-left-margin{min-width:2em;float:left}div.csl-right-inline{margin-left:2em;padding-left:1em}div.csl-indent{margin-left:2em}pre,pre code{word-wrap:normal}code{overflow-wrap:break-word}.hasCopyButton{position:relative}.btn-copy-ex{position:absolute;right:5px;top:5px;visibility:hidden}.hasCopyButton:hover button.btn-copy-ex{visibility:visible}pre{padding:1rem 0.5rem}@media (max-width: 575.98px){div>div>pre{margin-left:calc(var(--bs-gutter-x) * -.5);margin-right:calc(var(--bs-gutter-x) * -.5);border-radius:0;padding-left:1rem;padding-right:1rem}.btn-copy-ex{right:calc(var(--bs-gutter-x) * -.5 + 5px)}}code a:any-link{color:inherit;text-decoration-color:#6c757d}pre code{padding:0;background:transparent}pre code .error,pre code .warning{font-weight:bolder}pre .img img,pre .r-plt img{margin:5px 0;background-color:#fff}@media print{code a:link:after,code a:visited:after{content:""}}a.sourceLine:hover{text-decoration:none}mark,.mark{background:linear-gradient(-100deg, rgba(13,202,240,0.2), rgba(13,202,240,0.7) 95%, rgba(13,202,240,0.1))}.algolia-autocomplete .aa-hint{color:#212529}.algolia-autocomplete .aa-dropdown-menu{width:Max(100%, 20rem);background-color:#fff;border:1px solid var(--bs-border-color);margin-top:2px;max-height:50vh;overflow-y:auto}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion{cursor:pointer;padding:5px 4px;border-bottom:1px #e9ecef solid;font-size:0.9rem;color:#212529}.search-details{font-size:0.9rem;color:#BF281B;display:inline;font-weight:bolder}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion.aa-cursor{background-color:#f9eae8}pre{background-color:#f1f3f5}pre code{color:#003B4F}pre code span.al{color:#AD0000}pre code span.an{color:#5E5E5E}pre code span.at{color:#657422}pre code span.bn{color:#AD0000}pre code span.cf{color:#003B4F}pre code span.ch{color:#20794D}pre code span.cn{color:#8f5902}pre code span.co{color:#5E5E5E}pre code span.cv{color:#5E5E5E;font-style:italic}pre code span.do{color:#5E5E5E;font-style:italic}pre code span.dt{color:#AD0000}pre code span.dv{color:#AD0000}pre code span.er{color:#AD0000}pre code span.fl{color:#AD0000}pre code span.fu{color:#4758AB}pre code span.im{color:#00769E}pre code span.in{color:#5E5E5E}pre code span.kw{color:#003B4F}pre code span.op{color:#5E5E5E}pre code span.ot{color:#003B4F}pre code span.pp{color:#AD0000}pre code span.sc{color:#5E5E5E}pre code span.ss{color:#20794D}pre code span.st{color:#20794D}pre code span.va{color:#111111}pre code span.vs{color:#20794D}pre code span.wa{color:#5E5E5E;font-style:italic}
+ */:root,[data-bs-theme="light"]{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-default: #dee2e6;--bs-primary: #BF281B;--bs-secondary: #6c757d;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #f8f9fa;--bs-dark: #212529;--bs-default-rgb: 222,226,230;--bs-primary-rgb: 191,40,27;--bs-secondary-rgb: 108,117,125;--bs-success-rgb: 25,135,84;--bs-info-rgb: 13,202,240;--bs-warning-rgb: 255,193,7;--bs-danger-rgb: 220,53,69;--bs-light-rgb: 248,249,250;--bs-dark-rgb: 33,37,41;--bs-primary-text-emphasis: #4c100b;--bs-secondary-text-emphasis: #2b2f32;--bs-success-text-emphasis: #0a3622;--bs-info-text-emphasis: #055160;--bs-warning-text-emphasis: #664d03;--bs-danger-text-emphasis: #58151c;--bs-light-text-emphasis: #495057;--bs-dark-text-emphasis: #495057;--bs-primary-bg-subtle: #f2d4d1;--bs-secondary-bg-subtle: #e2e3e5;--bs-success-bg-subtle: #d1e7dd;--bs-info-bg-subtle: #cff4fc;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #f8d7da;--bs-light-bg-subtle: #fcfcfd;--bs-dark-bg-subtle: #ced4da;--bs-primary-border-subtle: #e5a9a4;--bs-secondary-border-subtle: #c4c8cb;--bs-success-border-subtle: #a3cfbb;--bs-info-border-subtle: #9eeaf9;--bs-warning-border-subtle: #ffe69c;--bs-danger-border-subtle: #f1aeb5;--bs-light-border-subtle: #e9ecef;--bs-dark-border-subtle: #adb5bd;--bs-white-rgb: 255,255,255;--bs-black-rgb: 0,0,0;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: monospace;--bs-gradient: linear-gradient(180deg, rgba(255,255,255,0.15), rgba(255,255,255,0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #212529;--bs-body-color-rgb: 33,37,41;--bs-body-bg: #fff;--bs-body-bg-rgb: 255,255,255;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0,0,0;--bs-secondary-color: rgba(33,37,41,0.75);--bs-secondary-color-rgb: 33,37,41;--bs-secondary-bg: #e9ecef;--bs-secondary-bg-rgb: 233,236,239;--bs-tertiary-color: rgba(33,37,41,0.5);--bs-tertiary-color-rgb: 33,37,41;--bs-tertiary-bg: #f8f9fa;--bs-tertiary-bg-rgb: 248,249,250;--bs-heading-color: inherit;--bs-link-color: #BF281B;--bs-link-color-rgb: 191,40,27;--bs-link-decoration: underline;--bs-link-hover-color: #992016;--bs-link-hover-color-rgb: 153,32,22;--bs-code-color: RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));--bs-highlight-bg: #fff3cd;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #dee2e6;--bs-border-color-translucent: rgba(0,0,0,0.175);--bs-border-radius: .375rem;--bs-border-radius-sm: .25rem;--bs-border-radius-lg: .5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15);--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-box-shadow-lg: 0 1rem 3rem rgba(0,0,0,0.175);--bs-box-shadow-inset: inset 0 1px 2px rgba(0,0,0,0.075);--bs-focus-ring-width: .25rem;--bs-focus-ring-opacity: .25;--bs-focus-ring-color: rgba(191,40,27,0.25);--bs-form-valid-color: #198754;--bs-form-valid-border-color: #198754;--bs-form-invalid-color: #dc3545;--bs-form-invalid-border-color: #dc3545}[data-bs-theme="dark"]{color-scheme:dark;--bs-body-color: #dee2e6;--bs-body-color-rgb: 222,226,230;--bs-body-bg: #212529;--bs-body-bg-rgb: 33,37,41;--bs-emphasis-color: #fff;--bs-emphasis-color-rgb: 255,255,255;--bs-secondary-color: rgba(222,226,230,0.75);--bs-secondary-color-rgb: 222,226,230;--bs-secondary-bg: #343a40;--bs-secondary-bg-rgb: 52,58,64;--bs-tertiary-color: rgba(222,226,230,0.5);--bs-tertiary-color-rgb: 222,226,230;--bs-tertiary-bg: #2b3035;--bs-tertiary-bg-rgb: 43,48,53;--bs-primary-text-emphasis: #d97e76;--bs-secondary-text-emphasis: #a7acb1;--bs-success-text-emphasis: #75b798;--bs-info-text-emphasis: #6edff6;--bs-warning-text-emphasis: #ffda6a;--bs-danger-text-emphasis: #ea868f;--bs-light-text-emphasis: #f8f9fa;--bs-dark-text-emphasis: #dee2e6;--bs-primary-bg-subtle: #260805;--bs-secondary-bg-subtle: #161719;--bs-success-bg-subtle: #051b11;--bs-info-bg-subtle: #032830;--bs-warning-bg-subtle: #332701;--bs-danger-bg-subtle: #2c0b0e;--bs-light-bg-subtle: #343a40;--bs-dark-bg-subtle: #1a1d20;--bs-primary-border-subtle: #731810;--bs-secondary-border-subtle: #41464b;--bs-success-border-subtle: #0f5132;--bs-info-border-subtle: #087990;--bs-warning-border-subtle: #997404;--bs-danger-border-subtle: #842029;--bs-light-border-subtle: #495057;--bs-dark-border-subtle: #343a40;--bs-heading-color: inherit;--bs-link-color: #d97e76;--bs-link-hover-color: #e19891;--bs-link-color-rgb: 217,126,118;--bs-link-hover-color-rgb: 225,152,145;--bs-code-color: RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));--bs-border-color: #495057;--bs-border-color-translucent: rgba(255,255,255,0.15);--bs-form-valid-color: #75b798;--bs-form-valid-border-color: #75b798;--bs-form-invalid-color: #ea868f;--bs-form-invalid-border-color: #ea868f}*,*::before,*::after{box-sizing:border-box}@media (prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}h1,.h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width: 1200px){h1,.h1{font-size:2.5rem}}h2,.h2{font-size:calc(1.325rem + .9vw)}@media (min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + .6vw)}@media (min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + .3vw)}@media (min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;-ms-text-decoration:underline dotted;-o-text-decoration:underline dotted;cursor:help;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem;padding:.625rem 1.25rem;border-left:.25rem solid #e9ecef}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}b,strong{font-weight:bolder}small,.small{font-size:.875em}mark,.mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em;color:RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));background-color:RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.04);padding:.5rem;border:1px solid var(--bs-border-color, #dee2e6);border-radius:.375rem}pre code{background-color:transparent;font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);background-color:RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.04);border-radius:.375rem;padding:.125rem .25rem;word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role="button"]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type="date"]):not([type="datetime-local"]):not([type="month"]):not([type="week"]):not([type="time"])::-webkit-calendar-picker-indicator{display:none !important}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button:not(:disabled),[type="button"]:not(:disabled),[type="reset"]:not(:disabled),[type="submit"]:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width: 1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){.container-sm,.container{max-width:540px}}@media (min-width: 768px){.container-md,.container-sm,.container{max-width:720px}}@media (min-width: 992px){.container-lg,.container-md,.container-sm,.container{max-width:960px}}@media (min-width: 1200px){.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1140px}}@media (min-width: 1400px){.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1320px}}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;-webkit-flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.grid{display:grid;grid-template-rows:repeat(var(--bs-rows, 1), 1fr);grid-template-columns:repeat(var(--bs-columns, 12), 1fr);gap:var(--bs-gap, 1.5rem)}.grid .g-col-1{grid-column:auto/span 1}.grid .g-col-2{grid-column:auto/span 2}.grid .g-col-3{grid-column:auto/span 3}.grid .g-col-4{grid-column:auto/span 4}.grid .g-col-5{grid-column:auto/span 5}.grid .g-col-6{grid-column:auto/span 6}.grid .g-col-7{grid-column:auto/span 7}.grid .g-col-8{grid-column:auto/span 8}.grid .g-col-9{grid-column:auto/span 9}.grid .g-col-10{grid-column:auto/span 10}.grid .g-col-11{grid-column:auto/span 11}.grid .g-col-12{grid-column:auto/span 12}.grid .g-start-1{grid-column-start:1}.grid .g-start-2{grid-column-start:2}.grid .g-start-3{grid-column-start:3}.grid .g-start-4{grid-column-start:4}.grid .g-start-5{grid-column-start:5}.grid .g-start-6{grid-column-start:6}.grid .g-start-7{grid-column-start:7}.grid .g-start-8{grid-column-start:8}.grid .g-start-9{grid-column-start:9}.grid .g-start-10{grid-column-start:10}.grid .g-start-11{grid-column-start:11}@media (min-width: 576px){.grid .g-col-sm-1{grid-column:auto/span 1}.grid .g-col-sm-2{grid-column:auto/span 2}.grid .g-col-sm-3{grid-column:auto/span 3}.grid .g-col-sm-4{grid-column:auto/span 4}.grid .g-col-sm-5{grid-column:auto/span 5}.grid .g-col-sm-6{grid-column:auto/span 6}.grid .g-col-sm-7{grid-column:auto/span 7}.grid .g-col-sm-8{grid-column:auto/span 8}.grid .g-col-sm-9{grid-column:auto/span 9}.grid .g-col-sm-10{grid-column:auto/span 10}.grid .g-col-sm-11{grid-column:auto/span 11}.grid .g-col-sm-12{grid-column:auto/span 12}.grid .g-start-sm-1{grid-column-start:1}.grid .g-start-sm-2{grid-column-start:2}.grid .g-start-sm-3{grid-column-start:3}.grid .g-start-sm-4{grid-column-start:4}.grid .g-start-sm-5{grid-column-start:5}.grid .g-start-sm-6{grid-column-start:6}.grid .g-start-sm-7{grid-column-start:7}.grid .g-start-sm-8{grid-column-start:8}.grid .g-start-sm-9{grid-column-start:9}.grid .g-start-sm-10{grid-column-start:10}.grid .g-start-sm-11{grid-column-start:11}}@media (min-width: 768px){.grid .g-col-md-1{grid-column:auto/span 1}.grid .g-col-md-2{grid-column:auto/span 2}.grid .g-col-md-3{grid-column:auto/span 3}.grid .g-col-md-4{grid-column:auto/span 4}.grid .g-col-md-5{grid-column:auto/span 5}.grid .g-col-md-6{grid-column:auto/span 6}.grid .g-col-md-7{grid-column:auto/span 7}.grid .g-col-md-8{grid-column:auto/span 8}.grid .g-col-md-9{grid-column:auto/span 9}.grid .g-col-md-10{grid-column:auto/span 10}.grid .g-col-md-11{grid-column:auto/span 11}.grid .g-col-md-12{grid-column:auto/span 12}.grid .g-start-md-1{grid-column-start:1}.grid .g-start-md-2{grid-column-start:2}.grid .g-start-md-3{grid-column-start:3}.grid .g-start-md-4{grid-column-start:4}.grid .g-start-md-5{grid-column-start:5}.grid .g-start-md-6{grid-column-start:6}.grid .g-start-md-7{grid-column-start:7}.grid .g-start-md-8{grid-column-start:8}.grid .g-start-md-9{grid-column-start:9}.grid .g-start-md-10{grid-column-start:10}.grid .g-start-md-11{grid-column-start:11}}@media (min-width: 992px){.grid .g-col-lg-1{grid-column:auto/span 1}.grid .g-col-lg-2{grid-column:auto/span 2}.grid .g-col-lg-3{grid-column:auto/span 3}.grid .g-col-lg-4{grid-column:auto/span 4}.grid .g-col-lg-5{grid-column:auto/span 5}.grid .g-col-lg-6{grid-column:auto/span 6}.grid .g-col-lg-7{grid-column:auto/span 7}.grid .g-col-lg-8{grid-column:auto/span 8}.grid .g-col-lg-9{grid-column:auto/span 9}.grid .g-col-lg-10{grid-column:auto/span 10}.grid .g-col-lg-11{grid-column:auto/span 11}.grid .g-col-lg-12{grid-column:auto/span 12}.grid .g-start-lg-1{grid-column-start:1}.grid .g-start-lg-2{grid-column-start:2}.grid .g-start-lg-3{grid-column-start:3}.grid .g-start-lg-4{grid-column-start:4}.grid .g-start-lg-5{grid-column-start:5}.grid .g-start-lg-6{grid-column-start:6}.grid .g-start-lg-7{grid-column-start:7}.grid .g-start-lg-8{grid-column-start:8}.grid .g-start-lg-9{grid-column-start:9}.grid .g-start-lg-10{grid-column-start:10}.grid .g-start-lg-11{grid-column-start:11}}@media (min-width: 1200px){.grid .g-col-xl-1{grid-column:auto/span 1}.grid .g-col-xl-2{grid-column:auto/span 2}.grid .g-col-xl-3{grid-column:auto/span 3}.grid .g-col-xl-4{grid-column:auto/span 4}.grid .g-col-xl-5{grid-column:auto/span 5}.grid .g-col-xl-6{grid-column:auto/span 6}.grid .g-col-xl-7{grid-column:auto/span 7}.grid .g-col-xl-8{grid-column:auto/span 8}.grid .g-col-xl-9{grid-column:auto/span 9}.grid .g-col-xl-10{grid-column:auto/span 10}.grid .g-col-xl-11{grid-column:auto/span 11}.grid .g-col-xl-12{grid-column:auto/span 12}.grid .g-start-xl-1{grid-column-start:1}.grid .g-start-xl-2{grid-column-start:2}.grid .g-start-xl-3{grid-column-start:3}.grid .g-start-xl-4{grid-column-start:4}.grid .g-start-xl-5{grid-column-start:5}.grid .g-start-xl-6{grid-column-start:6}.grid .g-start-xl-7{grid-column-start:7}.grid .g-start-xl-8{grid-column-start:8}.grid .g-start-xl-9{grid-column-start:9}.grid .g-start-xl-10{grid-column-start:10}.grid .g-start-xl-11{grid-column-start:11}}@media (min-width: 1400px){.grid .g-col-xxl-1{grid-column:auto/span 1}.grid .g-col-xxl-2{grid-column:auto/span 2}.grid .g-col-xxl-3{grid-column:auto/span 3}.grid .g-col-xxl-4{grid-column:auto/span 4}.grid .g-col-xxl-5{grid-column:auto/span 5}.grid .g-col-xxl-6{grid-column:auto/span 6}.grid .g-col-xxl-7{grid-column:auto/span 7}.grid .g-col-xxl-8{grid-column:auto/span 8}.grid .g-col-xxl-9{grid-column:auto/span 9}.grid .g-col-xxl-10{grid-column:auto/span 10}.grid .g-col-xxl-11{grid-column:auto/span 11}.grid .g-col-xxl-12{grid-column:auto/span 12}.grid .g-start-xxl-1{grid-column-start:1}.grid .g-start-xxl-2{grid-column-start:2}.grid .g-start-xxl-3{grid-column-start:3}.grid .g-start-xxl-4{grid-column-start:4}.grid .g-start-xxl-5{grid-column-start:5}.grid .g-start-xxl-6{grid-column-start:6}.grid .g-start-xxl-7{grid-column-start:7}.grid .g-start-xxl-8{grid-column-start:8}.grid .g-start-xxl-9{grid-column-start:9}.grid .g-start-xxl-10{grid-column-start:10}.grid .g-start-xxl-11{grid-column-start:11}}.col{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333%}.offset-2{margin-left:16.66667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333%}.offset-5{margin-left:41.66667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333%}.offset-8{margin-left:66.66667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333%}.offset-11{margin-left:91.66667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: .25rem}.g-1,.gy-1{--bs-gutter-y: .25rem}.g-2,.gx-2{--bs-gutter-x: .5rem}.g-2,.gy-2{--bs-gutter-y: .5rem}.g-3,.gx-3{--bs-gutter-x: 1rem}.g-3,.gy-3{--bs-gutter-y: 1rem}.g-4,.gx-4{--bs-gutter-x: 1.5rem}.g-4,.gy-4{--bs-gutter-y: 1.5rem}.g-5,.gx-5{--bs-gutter-x: 3rem}.g-5,.gy-5{--bs-gutter-y: 3rem}@media (min-width: 576px){.col-sm{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-sm-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-sm-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-sm-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-sm-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-sm-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-sm-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-sm-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-sm-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-sm-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-sm-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333%}.offset-sm-2{margin-left:16.66667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333%}.offset-sm-5{margin-left:41.66667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333%}.offset-sm-8{margin-left:66.66667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333%}.offset-sm-11{margin-left:91.66667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: .25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: .25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: .5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: .5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 3rem}}@media (min-width: 768px){.col-md{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-md-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-md-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-md-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-md-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-md-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-md-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-md-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-md-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-md-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-md-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333%}.offset-md-2{margin-left:16.66667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333%}.offset-md-5{margin-left:41.66667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333%}.offset-md-8{margin-left:66.66667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333%}.offset-md-11{margin-left:91.66667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: .25rem}.g-md-1,.gy-md-1{--bs-gutter-y: .25rem}.g-md-2,.gx-md-2{--bs-gutter-x: .5rem}.g-md-2,.gy-md-2{--bs-gutter-y: .5rem}.g-md-3,.gx-md-3{--bs-gutter-x: 1rem}.g-md-3,.gy-md-3{--bs-gutter-y: 1rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x: 3rem}.g-md-5,.gy-md-5{--bs-gutter-y: 3rem}}@media (min-width: 992px){.col-lg{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-lg-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-lg-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-lg-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-lg-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-lg-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-lg-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-lg-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-lg-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-lg-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-lg-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333%}.offset-lg-2{margin-left:16.66667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333%}.offset-lg-5{margin-left:41.66667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333%}.offset-lg-8{margin-left:66.66667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333%}.offset-lg-11{margin-left:91.66667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: .25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: .25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: .5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: .5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 3rem}}@media (min-width: 1200px){.col-xl{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-xl-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xl-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-xl-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xl-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-xl-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-xl-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-xl-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-xl-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-xl-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-xl-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333%}.offset-xl-2{margin-left:16.66667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333%}.offset-xl-5{margin-left:41.66667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333%}.offset-xl-8{margin-left:66.66667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333%}.offset-xl-11{margin-left:91.66667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: .25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: .25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: .5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: .5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 3rem}}@media (min-width: 1400px){.col-xxl{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-xxl-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xxl-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-xxl-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xxl-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-xxl-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-xxl-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-xxl-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-xxl-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-xxl-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-xxl-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333%}.offset-xxl-2{margin-left:16.66667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333%}.offset-xxl-5{margin-left:41.66667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333%}.offset-xxl-8{margin-left:66.66667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333%}.offset-xxl-11{margin-left:91.66667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: .25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: .25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: .5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: .5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 3rem}}.table{--bs-table-color-type: initial;--bs-table-bg-type: initial;--bs-table-color-state: initial;--bs-table-bg-state: initial;--bs-table-color: var(--bs-body-color);--bs-table-bg: var(--bs-body-bg);--bs-table-border-color: var(--bs-border-color);--bs-table-accent-bg: rgba(0,0,0,0);--bs-table-striped-color: var(--bs-body-color);--bs-table-striped-bg: rgba(0,0,0,0.05);--bs-table-active-color: var(--bs-body-color);--bs-table-active-bg: rgba(0,0,0,0.1);--bs-table-hover-color: var(--bs-body-color);--bs-table-hover-bg: rgba(0,0,0,0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-active{--bs-table-color-state: var(--bs-table-active-color);--bs-table-bg-state: var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state: var(--bs-table-hover-color);--bs-table-bg-state: var(--bs-table-hover-bg)}.table-primary{--bs-table-color: #000;--bs-table-bg: #f2d4d1;--bs-table-border-color: #dabfbc;--bs-table-striped-bg: #e6c9c7;--bs-table-striped-color: #000;--bs-table-active-bg: #dabfbc;--bs-table-active-color: #000;--bs-table-hover-bg: #e0c4c1;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #e2e3e5;--bs-table-border-color: #cbccce;--bs-table-striped-bg: #d7d8da;--bs-table-striped-color: #000;--bs-table-active-bg: #cbccce;--bs-table-active-color: #000;--bs-table-hover-bg: #d1d2d4;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #d1e7dd;--bs-table-border-color: #bcd0c7;--bs-table-striped-bg: #c7dbd2;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #cff4fc;--bs-table-border-color: #badce3;--bs-table-striped-bg: #c5e8ef;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #fff3cd;--bs-table-border-color: #e6dbb9;--bs-table-striped-bg: #f2e7c3;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #f8d7da;--bs-table-border-color: #dfc2c4;--bs-table-striped-bg: #eccccf;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #f8f9fa;--bs-table-border-color: #dfe0e1;--bs-table-striped-bg: #ecedee;--bs-table-striped-color: #000;--bs-table-active-bg: #dfe0e1;--bs-table-active-color: #000;--bs-table-hover-bg: #e5e6e7;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #212529;--bs-table-border-color: #373b3e;--bs-table-striped-bg: #2c3034;--bs-table-striped-color: #fff;--bs-table-active-bg: #373b3e;--bs-table-active-color: #fff;--bs-table-hover-bg: #323539;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label,.shiny-input-container .control-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type="file"]{overflow:hidden}.form-control[type="file"]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#df948d;outline:0;box-shadow:0 0 0 .25rem rgba(191,40,27,0.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon, none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-select{transition:none}}.form-select:focus{border-color:#df948d;outline:0;box-shadow:0 0 0 .25rem rgba(191,40,27,0.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme="dark"] .form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check,.shiny-input-container .checkbox,.shiny-input-container .radio{display:block;min-height:1.5rem;padding-left:0;margin-bottom:.125rem}.form-check .form-check-input,.form-check .shiny-input-container .checkbox input,.form-check .shiny-input-container .radio input,.shiny-input-container .checkbox .form-check-input,.shiny-input-container .checkbox .shiny-input-container .checkbox input,.shiny-input-container .checkbox .shiny-input-container .radio input,.shiny-input-container .radio .form-check-input,.shiny-input-container .radio .shiny-input-container .checkbox input,.shiny-input-container .radio .shiny-input-container .radio input{float:left;margin-left:0}.form-check-reverse{padding-right:0;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:0;margin-left:0}.form-check-input,.shiny-input-container .checkbox input,.shiny-input-container .checkbox-inline input,.shiny-input-container .radio input,.shiny-input-container .radio-inline input{--bs-form-check-bg: var(--bs-body-bg);width:1em;height:1em;margin-top:.25em;vertical-align:top;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);print-color-adjust:exact}.form-check-input[type="checkbox"],.shiny-input-container .checkbox input[type="checkbox"],.shiny-input-container .checkbox-inline input[type="checkbox"],.shiny-input-container .radio input[type="checkbox"],.shiny-input-container .radio-inline input[type="checkbox"]{border-radius:.25em}.form-check-input[type="radio"],.shiny-input-container .checkbox input[type="radio"],.shiny-input-container .checkbox-inline input[type="radio"],.shiny-input-container .radio input[type="radio"],.shiny-input-container .radio-inline input[type="radio"]{border-radius:50%}.form-check-input:active,.shiny-input-container .checkbox input:active,.shiny-input-container .checkbox-inline input:active,.shiny-input-container .radio input:active,.shiny-input-container .radio-inline input:active{filter:brightness(90%)}.form-check-input:focus,.shiny-input-container .checkbox input:focus,.shiny-input-container .checkbox-inline input:focus,.shiny-input-container .radio input:focus,.shiny-input-container .radio-inline input:focus{border-color:#df948d;outline:0;box-shadow:0 0 0 .25rem rgba(191,40,27,0.25)}.form-check-input:checked,.shiny-input-container .checkbox input:checked,.shiny-input-container .checkbox-inline input:checked,.shiny-input-container .radio input:checked,.shiny-input-container .radio-inline input:checked{background-color:#BF281B;border-color:#BF281B}.form-check-input:checked[type="checkbox"],.shiny-input-container .checkbox input:checked[type="checkbox"],.shiny-input-container .checkbox-inline input:checked[type="checkbox"],.shiny-input-container .radio input:checked[type="checkbox"],.shiny-input-container .radio-inline input:checked[type="checkbox"]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type="radio"],.shiny-input-container .checkbox input:checked[type="radio"],.shiny-input-container .checkbox-inline input:checked[type="radio"],.shiny-input-container .radio input:checked[type="radio"],.shiny-input-container .radio-inline input:checked[type="radio"]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type="checkbox"]:indeterminate,.shiny-input-container .checkbox input[type="checkbox"]:indeterminate,.shiny-input-container .checkbox-inline input[type="checkbox"]:indeterminate,.shiny-input-container .radio input[type="checkbox"]:indeterminate,.shiny-input-container .radio-inline input[type="checkbox"]:indeterminate{background-color:#BF281B;border-color:#BF281B;--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled,.shiny-input-container .checkbox input:disabled,.shiny-input-container .checkbox-inline input:disabled,.shiny-input-container .radio input:disabled,.shiny-input-container .radio-inline input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input[disabled]~span,.form-check-input:disabled~.form-check-label,.form-check-input:disabled~span,.shiny-input-container .checkbox input[disabled]~.form-check-label,.shiny-input-container .checkbox input[disabled]~span,.shiny-input-container .checkbox input:disabled~.form-check-label,.shiny-input-container .checkbox input:disabled~span,.shiny-input-container .checkbox-inline input[disabled]~.form-check-label,.shiny-input-container .checkbox-inline input[disabled]~span,.shiny-input-container .checkbox-inline input:disabled~.form-check-label,.shiny-input-container .checkbox-inline input:disabled~span,.shiny-input-container .radio input[disabled]~.form-check-label,.shiny-input-container .radio input[disabled]~span,.shiny-input-container .radio input:disabled~.form-check-label,.shiny-input-container .radio input:disabled~span,.shiny-input-container .radio-inline input[disabled]~.form-check-label,.shiny-input-container .radio-inline input[disabled]~span,.shiny-input-container .radio-inline input:disabled~.form-check-label,.shiny-input-container .radio-inline input:disabled~span{cursor:default;opacity:.5}.form-check-label,.shiny-input-container .checkbox label,.shiny-input-container .checkbox-inline label,.shiny-input-container .radio label,.shiny-input-container .radio-inline label{cursor:pointer}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280,0,0,0.25%29'/%3e%3c/svg%3e");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23df948d'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255,255,255,0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(191,40,27,0.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(191,40,27,0.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#BF281B;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#ecbfbb}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#BF281B;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#ecbfbb}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity 0.1s ease-in-out,transform 0.1s ease-in-out}@media (prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:transparent}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb), .65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-control-plaintext~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb), .65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>:disabled~label,.form-floating>.form-control:disabled~label{color:#6c757d}.form-floating>:disabled~label::after,.form-floating>.form-control:disabled~label::after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:stretch;-webkit-align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n + 3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>:nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n + 4),.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3rem + calc(1.5em + .75rem))}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:var(--bs-form-valid-color)}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3rem + calc(1.5em + .75rem))}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:var(--bs-form-invalid-color)}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: .75rem;--bs-btn-padding-y: .375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: var(--bs-body-color);--bs-btn-bg: transparent;--bs-btn-border-width: var(--bs-border-width);--bs-btn-border-color: transparent;--bs-btn-border-radius: var(--bs-border-radius);--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);--bs-btn-disabled-opacity: .65;--bs-btn-focus-box-shadow: 0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-default{--bs-btn-color: #000;--bs-btn-bg: #dee2e6;--bs-btn-border-color: #dee2e6;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #e3e6ea;--bs-btn-hover-border-color: #e1e5e9;--bs-btn-focus-shadow-rgb: 189,192,196;--bs-btn-active-color: #000;--bs-btn-active-bg: #e5e8eb;--bs-btn-active-border-color: #e1e5e9;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #dee2e6;--bs-btn-disabled-border-color: #dee2e6}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #BF281B;--bs-btn-border-color: #BF281B;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #a22217;--bs-btn-hover-border-color: #992016;--bs-btn-focus-shadow-rgb: 201,72,61;--bs-btn-active-color: #fff;--bs-btn-active-bg: #992016;--bs-btn-active-border-color: #8f1e14;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #BF281B;--bs-btn-disabled-border-color: #BF281B}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #5c636a;--bs-btn-hover-border-color: #565e64;--bs-btn-focus-shadow-rgb: 130,138,145;--bs-btn-active-color: #fff;--bs-btn-active-bg: #565e64;--bs-btn-active-border-color: #51585e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #6c757d;--bs-btn-disabled-border-color: #6c757d}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #157347;--bs-btn-hover-border-color: #146c43;--bs-btn-focus-shadow-rgb: 60,153,110;--bs-btn-active-color: #fff;--bs-btn-active-bg: #146c43;--bs-btn-active-border-color: #13653f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #198754;--bs-btn-disabled-border-color: #198754}.btn-info{--bs-btn-color: #000;--bs-btn-bg: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #31d2f2;--bs-btn-hover-border-color: #25cff2;--bs-btn-focus-shadow-rgb: 11,172,204;--bs-btn-active-color: #000;--bs-btn-active-bg: #3dd5f3;--bs-btn-active-border-color: #25cff2;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #0dcaf0;--bs-btn-disabled-border-color: #0dcaf0}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffca2c;--bs-btn-hover-border-color: #ffc720;--bs-btn-focus-shadow-rgb: 217,164,6;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffcd39;--bs-btn-active-border-color: #ffc720;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #ffc107;--bs-btn-disabled-border-color: #ffc107}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #bb2d3b;--bs-btn-hover-border-color: #b02a37;--bs-btn-focus-shadow-rgb: 225,83,97;--bs-btn-active-color: #fff;--bs-btn-active-bg: #b02a37;--bs-btn-active-border-color: #a52834;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #dc3545;--bs-btn-disabled-border-color: #dc3545}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #d3d4d5;--bs-btn-hover-border-color: #c6c7c8;--bs-btn-focus-shadow-rgb: 211,212,213;--bs-btn-active-color: #000;--bs-btn-active-bg: #c6c7c8;--bs-btn-active-border-color: #babbbc;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #f8f9fa;--bs-btn-disabled-border-color: #f8f9fa}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #424649;--bs-btn-hover-border-color: #373b3e;--bs-btn-focus-shadow-rgb: 66,70,73;--bs-btn-active-color: #fff;--bs-btn-active-bg: #4d5154;--bs-btn-active-border-color: #373b3e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #212529;--bs-btn-disabled-border-color: #212529}.btn-outline-default{--bs-btn-color: #dee2e6;--bs-btn-border-color: #dee2e6;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #dee2e6;--bs-btn-hover-border-color: #dee2e6;--bs-btn-focus-shadow-rgb: 222,226,230;--bs-btn-active-color: #000;--bs-btn-active-bg: #dee2e6;--bs-btn-active-border-color: #dee2e6;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #dee2e6;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dee2e6;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-primary{--bs-btn-color: #BF281B;--bs-btn-border-color: #BF281B;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #BF281B;--bs-btn-hover-border-color: #BF281B;--bs-btn-focus-shadow-rgb: 191,40,27;--bs-btn-active-color: #fff;--bs-btn-active-bg: #BF281B;--bs-btn-active-border-color: #BF281B;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #BF281B;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #BF281B;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #6c757d;--bs-btn-hover-border-color: #6c757d;--bs-btn-focus-shadow-rgb: 108,117,125;--bs-btn-active-color: #fff;--bs-btn-active-bg: #6c757d;--bs-btn-active-border-color: #6c757d;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #6c757d;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #198754;--bs-btn-hover-border-color: #198754;--bs-btn-focus-shadow-rgb: 25,135,84;--bs-btn-active-color: #fff;--bs-btn-active-bg: #198754;--bs-btn-active-border-color: #198754;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #198754;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #198754;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #0dcaf0;--bs-btn-hover-border-color: #0dcaf0;--bs-btn-focus-shadow-rgb: 13,202,240;--bs-btn-active-color: #000;--bs-btn-active-bg: #0dcaf0;--bs-btn-active-border-color: #0dcaf0;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #0dcaf0;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0dcaf0;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffc107;--bs-btn-hover-border-color: #ffc107;--bs-btn-focus-shadow-rgb: 255,193,7;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffc107;--bs-btn-active-border-color: #ffc107;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #ffc107;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ffc107;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #dc3545;--bs-btn-hover-border-color: #dc3545;--bs-btn-focus-shadow-rgb: 220,53,69;--bs-btn-active-color: #fff;--bs-btn-active-bg: #dc3545;--bs-btn-active-border-color: #dc3545;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #dc3545;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dc3545;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #f8f9fa;--bs-btn-hover-border-color: #f8f9fa;--bs-btn-focus-shadow-rgb: 248,249,250;--bs-btn-active-color: #000;--bs-btn-active-bg: #f8f9fa;--bs-btn-active-border-color: #f8f9fa;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #f8f9fa;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #f8f9fa;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #212529;--bs-btn-hover-border-color: #212529;--bs-btn-focus-shadow-rgb: 33,37,41;--bs-btn-active-color: #fff;--bs-btn-active-bg: #212529;--bs-btn-active-border-color: #212529;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #212529;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #212529;--bs-btn-bg: transparent;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: var(--bs-link-color);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--bs-link-hover-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--bs-link-hover-color);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: 0 0 0 #000;--bs-btn-focus-shadow-rgb: 201,72,61;text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: .5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius: var(--bs-border-radius-lg)}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: .25rem;--bs-btn-padding-x: .5rem;--bs-btn-font-size:.875rem;--bs-btn-border-radius: var(--bs-border-radius-sm)}.fade{transition:opacity 0.15s linear}@media (prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 10rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: .5rem;--bs-dropdown-spacer: .125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color: var(--bs-body-color);--bs-dropdown-bg: var(--bs-body-bg);--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-border-radius: var(--bs-border-radius);--bs-dropdown-border-width: var(--bs-border-width);--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y: .5rem;--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15);--bs-dropdown-link-color: var(--bs-body-color);--bs-dropdown-link-hover-color: var(--bs-body-color);--bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #BF281B;--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);--bs-dropdown-item-padding-x: 1rem;--bs-dropdown-item-padding-y: .25rem;--bs-dropdown-header-color: #6c757d;--bs-dropdown-header-padding-x: 1rem;--bs-dropdown-header-padding-y: .5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius, 0)}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #343a40;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg: rgba(255,255,255,0.15);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #BF281B;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-header-color: #adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto}.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;justify-content:flex-start;-webkit-justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:nth-child(n + 3),.btn-group>:not(.btn-check)+.btn,.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;-webkit-flex-direction:column;align-items:flex-start;-webkit-align-items:flex-start;justify-content:center;-webkit-justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn~.btn,.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background:none;border:0;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(191,40,27,0.25)}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: var(--bs-border-width);--bs-nav-tabs-border-color: var(--bs-border-color);--bs-nav-tabs-border-radius: var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color: var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius: var(--bs-border-radius);--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #BF281B}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: .125rem;--bs-nav-underline-link-active-color: var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:hover,.nav-underline .nav-link:focus{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill>.nav-link,.nav-fill .nav-item{flex:1 1 auto;-webkit-flex:1 1 auto;text-align:center}.nav-justified>.nav-link,.nav-justified .nav-item{flex-basis:0;-webkit-flex-basis:0;flex-grow:1;-webkit-flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x: 0;--bs-navbar-padding-y: .5rem;--bs-navbar-color: #fff;--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y: .3125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.25rem;--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff;--bs-navbar-nav-link-padding-x: .5rem;--bs-navbar-toggler-padding-y: .25rem;--bs-navbar-toggler-padding-x: .75rem;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833,37,41,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius: var(--bs-border-radius);--bs-navbar-toggler-focus-width: .25rem;--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl{display:flex;display:-webkit-flex;flex-wrap:inherit;-webkit-flex-wrap:inherit;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;-webkit-flex-basis:100%;flex-grow:1;-webkit-flex-grow:1;align-items:center;-webkit-align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media (min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme="dark"]{--bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.55);--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.75);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.25);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.1);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme="dark"] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y: 1rem;--bs-card-spacer-x: 1rem;--bs-card-title-spacer-y: .5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width: var(--bs-border-width);--bs-card-border-color: var(--bs-border-color-translucent);--bs-card-border-radius: var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y: .5rem;--bs-card-cap-padding-x: 1rem;--bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: var(--bs-body-bg);--bs-card-img-overlay-padding: 1rem;--bs-card-group-margin: .75rem;position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;-webkit-flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width: 576px){.card-group{display:flex;display:-webkit-flex;flex-flow:row wrap;-webkit-flex-flow:row wrap}.card-group>.card{flex:1 0 0%;-webkit-flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer{border-bottom-left-radius:0}}.accordion{--bs-accordion-color: var(--bs-body-color);--bs-accordion-bg: var(--bs-body-bg);--bs-accordion-transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color: var(--bs-border-color);--bs-accordion-border-width: var(--bs-border-width);--bs-accordion-border-radius: var(--bs-border-radius);--bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: var(--bs-body-color);--bs-accordion-btn-bg: var(--bs-accordion-bg);--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%234c100b'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #df948d;--bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(191,40,27,0.25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: var(--bs-primary-text-emphasis);--bs-accordion-active-bg: var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;-webkit-flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme="dark"] .accordion-button::after{--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23d97e76'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23d97e76'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: var(--bs-secondary-color);--bs-breadcrumb-item-padding-x: .5rem;--bs-breadcrumb-item-active-color: var(--bs-secondary-color);display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size:1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(191,40,27,0.25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #BF281B;--bs-pagination-active-border-color: #BF281B;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;display:-webkit-flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size:.875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x: .65em;--bs-badge-padding-y: .35em;--bs-badge-font-size:.75em;--bs-badge-font-weight: 700;--bs-badge-color: #fff;--bs-badge-border-radius: var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 1rem;--bs-alert-padding-y: 1rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius: var(--bs-border-radius);--bs-alert-link-color: inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-default{--bs-alert-color: var(--bs-default-text-emphasis);--bs-alert-bg: var(--bs-default-bg-subtle);--bs-alert-border-color: var(--bs-default-border-subtle);--bs-alert-link-color: var(--bs-default-text-emphasis)}.alert-primary{--bs-alert-color: var(--bs-primary-text-emphasis);--bs-alert-bg: var(--bs-primary-bg-subtle);--bs-alert-border-color: var(--bs-primary-border-subtle);--bs-alert-link-color: var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color: var(--bs-secondary-text-emphasis);--bs-alert-bg: var(--bs-secondary-bg-subtle);--bs-alert-border-color: var(--bs-secondary-border-subtle);--bs-alert-link-color: var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color: var(--bs-success-text-emphasis);--bs-alert-bg: var(--bs-success-bg-subtle);--bs-alert-border-color: var(--bs-success-border-subtle);--bs-alert-link-color: var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color: var(--bs-info-text-emphasis);--bs-alert-bg: var(--bs-info-bg-subtle);--bs-alert-border-color: var(--bs-info-border-subtle);--bs-alert-link-color: var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color: var(--bs-warning-text-emphasis);--bs-alert-bg: var(--bs-warning-bg-subtle);--bs-alert-border-color: var(--bs-warning-border-subtle);--bs-alert-link-color: var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color: var(--bs-danger-text-emphasis);--bs-alert-bg: var(--bs-danger-bg-subtle);--bs-alert-border-color: var(--bs-danger-border-subtle);--bs-alert-link-color: var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color: var(--bs-light-text-emphasis);--bs-alert-bg: var(--bs-light-bg-subtle);--bs-alert-border-color: var(--bs-light-border-subtle);--bs-alert-link-color: var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color: var(--bs-dark-text-emphasis);--bs-alert-bg: var(--bs-dark-bg-subtle);--bs-alert-border-color: var(--bs-dark-border-subtle);--bs-alert-link-color: var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height: 1rem;--bs-progress-font-size:.75rem;--bs-progress-bg: var(--bs-secondary-bg);--bs-progress-border-radius: var(--bs-border-radius);--bs-progress-box-shadow: var(--bs-box-shadow-inset);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #BF281B;--bs-progress-bar-transition: width 0.6s ease;display:flex;display:-webkit-flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;justify-content:center;-webkit-justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: var(--bs-body-color);--bs-list-group-bg: var(--bs-body-bg);--bs-list-group-border-color: var(--bs-border-color);--bs-list-group-border-width: var(--bs-border-width);--bs-list-group-border-radius: var(--bs-border-radius);--bs-list-group-item-padding-x: 1rem;--bs-list-group-item-padding-y: .5rem;--bs-list-group-action-color: var(--bs-secondary-color);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-tertiary-bg);--bs-list-group-action-active-color: var(--bs-body-color);--bs-list-group-action-active-bg: var(--bs-secondary-bg);--bs-list-group-disabled-color: var(--bs-secondary-color);--bs-list-group-disabled-bg: var(--bs-body-bg);--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #BF281B;--bs-list-group-active-border-color: #BF281B;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width: 576px){.list-group-horizontal-sm{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 768px){.list-group-horizontal-md{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 992px){.list-group-horizontal-lg{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 1200px){.list-group-horizontal-xl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-default{--bs-list-group-color: var(--bs-default-text-emphasis);--bs-list-group-bg: var(--bs-default-bg-subtle);--bs-list-group-border-color: var(--bs-default-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-default-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-default-border-subtle);--bs-list-group-active-color: var(--bs-default-bg-subtle);--bs-list-group-active-bg: var(--bs-default-text-emphasis);--bs-list-group-active-border-color: var(--bs-default-text-emphasis)}.list-group-item-primary{--bs-list-group-color: var(--bs-primary-text-emphasis);--bs-list-group-bg: var(--bs-primary-bg-subtle);--bs-list-group-border-color: var(--bs-primary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-primary-border-subtle);--bs-list-group-active-color: var(--bs-primary-bg-subtle);--bs-list-group-active-bg: var(--bs-primary-text-emphasis);--bs-list-group-active-border-color: var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color: var(--bs-secondary-text-emphasis);--bs-list-group-bg: var(--bs-secondary-bg-subtle);--bs-list-group-border-color: var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);--bs-list-group-active-color: var(--bs-secondary-bg-subtle);--bs-list-group-active-bg: var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color: var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color: var(--bs-success-text-emphasis);--bs-list-group-bg: var(--bs-success-bg-subtle);--bs-list-group-border-color: var(--bs-success-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-success-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-success-border-subtle);--bs-list-group-active-color: var(--bs-success-bg-subtle);--bs-list-group-active-bg: var(--bs-success-text-emphasis);--bs-list-group-active-border-color: var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color: var(--bs-info-text-emphasis);--bs-list-group-bg: var(--bs-info-bg-subtle);--bs-list-group-border-color: var(--bs-info-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-info-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-info-border-subtle);--bs-list-group-active-color: var(--bs-info-bg-subtle);--bs-list-group-active-bg: var(--bs-info-text-emphasis);--bs-list-group-active-border-color: var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color: var(--bs-warning-text-emphasis);--bs-list-group-bg: var(--bs-warning-bg-subtle);--bs-list-group-border-color: var(--bs-warning-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-warning-border-subtle);--bs-list-group-active-color: var(--bs-warning-bg-subtle);--bs-list-group-active-bg: var(--bs-warning-text-emphasis);--bs-list-group-active-border-color: var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color: var(--bs-danger-text-emphasis);--bs-list-group-bg: var(--bs-danger-bg-subtle);--bs-list-group-border-color: var(--bs-danger-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-danger-border-subtle);--bs-list-group-active-color: var(--bs-danger-bg-subtle);--bs-list-group-active-bg: var(--bs-danger-text-emphasis);--bs-list-group-active-border-color: var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color: var(--bs-light-text-emphasis);--bs-list-group-bg: var(--bs-light-bg-subtle);--bs-list-group-border-color: var(--bs-light-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-light-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-light-border-subtle);--bs-list-group-active-color: var(--bs-light-bg-subtle);--bs-list-group-active-bg: var(--bs-light-text-emphasis);--bs-list-group-active-border-color: var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color: var(--bs-dark-text-emphasis);--bs-list-group-bg: var(--bs-dark-bg-subtle);--bs-list-group-border-color: var(--bs-dark-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-dark-border-subtle);--bs-list-group-active-color: var(--bs-dark-bg-subtle);--bs-list-group-active-bg: var(--bs-dark-text-emphasis);--bs-list-group-active-border-color: var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity: .5;--bs-btn-close-hover-opacity: .75;--bs-btn-close-focus-shadow: 0 0 0 .25rem rgba(191,40,27,0.25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: .25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close:disabled,.btn-close.disabled{pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme="dark"] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: .75rem;--bs-toast-padding-y: .5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 350px;--bs-toast-font-size:.875rem;--bs-toast-color: ;--bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width: var(--bs-border-width);--bs-toast-border-color: var(--bs-border-color-translucent);--bs-toast-border-radius: var(--bs-border-radius);--bs-toast-box-shadow: var(--bs-box-shadow);--bs-toast-header-color: var(--bs-secondary-color);--bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color: var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;width:-webkit-max-content;width:-moz-max-content;width:-ms-max-content;width:-o-max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 1rem;--bs-modal-margin: .5rem;--bs-modal-color: ;--bs-modal-bg: var(--bs-body-bg);--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: var(--bs-border-width);--bs-modal-border-radius: var(--bs-border-radius-lg);--bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x: 1rem;--bs-modal-header-padding-y: 1rem;--bs-modal-header-padding: 1rem 1rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: var(--bs-border-width);--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: .5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform 0.3s ease-out;transform:translate(0, -50px)}@media (prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #000;--bs-backdrop-opacity: .5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:flex-end;-webkit-justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width: 576px){.modal{--bs-modal-margin: 1.75rem;--bs-modal-box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media (min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media (min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header,.modal-fullscreen .modal-footer{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header,.modal-fullscreen-sm-down .modal-footer{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header,.modal-fullscreen-md-down .modal-footer{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header,.modal-fullscreen-lg-down .modal-footer{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header,.modal-fullscreen-xl-down .modal-footer{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header,.modal-fullscreen-xxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 200px;--bs-tooltip-padding-x: .5rem;--bs-tooltip-padding-y: .25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:.875rem;--bs-tooltip-color: var(--bs-body-bg);--bs-tooltip-bg: var(--bs-emphasis-color);--bs-tooltip-border-radius: var(--bs-border-radius);--bs-tooltip-opacity: .9;--bs-tooltip-arrow-width: .8rem;--bs-tooltip-arrow-height: .4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow{bottom:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow{left:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow{top:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow{right:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size:.875rem;--bs-popover-bg: var(--bs-body-bg);--bs-popover-border-width: var(--bs-border-width);--bs-popover-border-color: var(--bs-border-color-translucent);--bs-popover-border-radius: var(--bs-border-radius-lg);--bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15);--bs-popover-header-padding-x: 1rem;--bs-popover-header-padding-y: .5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: inherit;--bs-popover-header-bg: var(--bs-secondary-bg);--bs-popover-body-padding-x: 1rem;--bs-popover-body-padding-y: 1rem;--bs-popover-body-color: var(--bs-body-color);--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: .5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-bottom .popover-header::before,.bs-popover-auto[data-popper-placement^="bottom"] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y;-webkit-touch-action:pan-y;-moz-touch-action:pan-y;-ms-touch-action:pan-y;-o-touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end{transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start{transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end{z-index:1;opacity:1}.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:center;-webkit-justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;transition:opacity 0.15s ease}@media (prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;display:-webkit-flex;justify-content:center;-webkit-justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;-webkit-flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity 0.6s ease}@media (prefers-reduced-motion: reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme="dark"] .carousel .carousel-control-prev-icon,[data-bs-theme="dark"] .carousel .carousel-control-next-icon,[data-bs-theme="dark"].carousel .carousel-control-prev-icon,[data-bs-theme="dark"].carousel .carousel-control-next-icon{filter:invert(1) grayscale(100)}[data-bs-theme="dark"] .carousel .carousel-indicators [data-bs-target],[data-bs-theme="dark"].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme="dark"] .carousel .carousel-caption,[data-bs-theme="dark"].carousel .carousel-caption{color:#000}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-border-width: .25em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: .2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media (prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 1rem;--bs-offcanvas-padding-y: 1rem;--bs-offcanvas-color: var(--bs-body-color);--bs-offcanvas-bg: var(--bs-body-bg);--bs-offcanvas-border-width: var(--bs-border-width);--bs-offcanvas-border-color: var(--bs-border-color-translucent);--bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-offcanvas-transition: transform .3s ease-in-out;--bs-offcanvas-title-line-height: 1.5}@media (max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 575.98px) and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media (max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding){transform:none}.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show{visibility:visible}}@media (min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 767.98px) and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media (max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.showing,.offcanvas-md.show:not(.hiding){transform:none}.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show{visibility:visible}}@media (min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 991.98px) and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media (max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding){transform:none}.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show{visibility:visible}}@media (min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media (max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding){transform:none}.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show{visibility:visible}}@media (min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media (max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding){transform:none}.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show{visibility:visible}}@media (min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin-top:calc(-.5 * var(--bs-offcanvas-padding-y));margin-right:calc(-.5 * var(--bs-offcanvas-padding-x));margin-bottom:calc(-.5 * var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;-webkit-flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0,0,0,0.8) 75%, #000 95%);-webkit-mask-image:linear-gradient(130deg, #000 55%, rgba(0,0,0,0.8) 75%, #000 95%);mask-size:200% 100%;-webkit-mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%;-webkit-mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-default{color:#000 !important;background-color:RGBA(var(--bs-default-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-primary{color:#fff !important;background-color:RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important}.link-default{color:RGBA(var(--bs-default-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-default-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-default:hover,.link-default:focus{color:RGBA(229,232,235, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(229,232,235, var(--bs-link-underline-opacity, 1)) !important}.link-primary{color:RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-primary:hover,.link-primary:focus{color:RGBA(153,32,22, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(153,32,22, var(--bs-link-underline-opacity, 1)) !important}.link-secondary{color:RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-secondary:hover,.link-secondary:focus{color:RGBA(86,94,100, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(86,94,100, var(--bs-link-underline-opacity, 1)) !important}.link-success{color:RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-success:hover,.link-success:focus{color:RGBA(20,108,67, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(20,108,67, var(--bs-link-underline-opacity, 1)) !important}.link-info{color:RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-info:hover,.link-info:focus{color:RGBA(61,213,243, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(61,213,243, var(--bs-link-underline-opacity, 1)) !important}.link-warning{color:RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-warning:hover,.link-warning:focus{color:RGBA(255,205,57, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(255,205,57, var(--bs-link-underline-opacity, 1)) !important}.link-danger{color:RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-danger:hover,.link-danger:focus{color:RGBA(176,42,55, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(176,42,55, var(--bs-link-underline-opacity, 1)) !important}.link-light{color:RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-light:hover,.link-light:focus{color:RGBA(249,250,251, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(249,250,251, var(--bs-link-underline-opacity, 1)) !important}.link-dark{color:RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-dark:hover,.link-dark:focus{color:RGBA(26,30,33, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(26,30,33, var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));text-underline-offset:.25em;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;-webkit-flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:0.2s ease-in-out transform}@media (prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(0.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: calc(3 / 4 * 100%)}.ratio-16x9{--bs-aspect-ratio: calc(9 / 16 * 100%)}.ratio-21x9{--bs-aspect-ratio: calc(9 / 21 * 100%)}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row;align-items:center;-webkit-align-items:center;align-self:stretch;-webkit-align-self:stretch}.vstack{display:flex;display:-webkit-flex;flex:1 1 auto;-webkit-flex:1 1 auto;flex-direction:column;-webkit-flex-direction:column;align-self:stretch;-webkit-align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;-webkit-align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.object-fit-contain{object-fit:contain !important}.object-fit-cover{object-fit:cover !important}.object-fit-fill{object-fit:fill !important}.object-fit-scale{object-fit:scale-down !important}.object-fit-none{object-fit:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.overflow-x-auto{overflow-x:auto !important}.overflow-x-hidden{overflow-x:hidden !important}.overflow-x-visible{overflow-x:visible !important}.overflow-x-scroll{overflow-x:scroll !important}.overflow-y-auto{overflow-y:auto !important}.overflow-y-hidden{overflow-y:hidden !important}.overflow-y-visible{overflow-y:visible !important}.overflow-y-scroll{overflow-y:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-inline-grid{display:inline-grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important}.shadow-sm{box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,0.175) !important}.shadow-none{box-shadow:none !important}.focus-ring-default{--bs-focus-ring-color: rgba(var(--bs-default-rgb), var(--bs-focus-ring-opacity))}.focus-ring-primary{--bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-0{border:0 !important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-top-0{border-top:0 !important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-start-0{border-left:0 !important}.border-default{--bs-border-opacity: 1;border-color:rgba(var(--bs-default-rgb), var(--bs-border-opacity)) !important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important}.border-black{--bs-border-opacity: 1;border-color:rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle) !important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle) !important}.border-success-subtle{border-color:var(--bs-success-border-subtle) !important}.border-info-subtle{border-color:var(--bs-info-border-subtle) !important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle) !important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle) !important}.border-light-subtle{border-color:var(--bs-light-border-subtle) !important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle) !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.border-opacity-10{--bs-border-opacity: .1}.border-opacity-25{--bs-border-opacity: .25}.border-opacity-50{--bs-border-opacity: .5}.border-opacity-75{--bs-border-opacity: .75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.25rem !important}.m-2{margin:.5rem !important}.m-3{margin:1rem !important}.m-4{margin:1.5rem !important}.m-5{margin:3rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.25rem !important}.mt-2{margin-top:.5rem !important}.mt-3{margin-top:1rem !important}.mt-4{margin-top:1.5rem !important}.mt-5{margin-top:3rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.25rem !important}.me-2{margin-right:.5rem !important}.me-3{margin-right:1rem !important}.me-4{margin-right:1.5rem !important}.me-5{margin-right:3rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.25rem !important}.mb-2{margin-bottom:.5rem !important}.mb-3{margin-bottom:1rem !important}.mb-4{margin-bottom:1.5rem !important}.mb-5{margin-bottom:3rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.25rem !important}.ms-2{margin-left:.5rem !important}.ms-3{margin-left:1rem !important}.ms-4{margin-left:1.5rem !important}.ms-5{margin-left:3rem !important}.ms-auto{margin-left:auto !important}.p-0{padding:0 !important}.p-1{padding:.25rem !important}.p-2{padding:.5rem !important}.p-3{padding:1rem !important}.p-4{padding:1.5rem !important}.p-5{padding:3rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.25rem !important}.pt-2{padding-top:.5rem !important}.pt-3{padding-top:1rem !important}.pt-4{padding-top:1.5rem !important}.pt-5{padding-top:3rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.25rem !important}.pe-2{padding-right:.5rem !important}.pe-3{padding-right:1rem !important}.pe-4{padding-right:1.5rem !important}.pe-5{padding-right:3rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.25rem !important}.pb-2{padding-bottom:.5rem !important}.pb-3{padding-bottom:1rem !important}.pb-4{padding-bottom:1.5rem !important}.pb-5{padding-bottom:3rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.25rem !important}.ps-2{padding-left:.5rem !important}.ps-3{padding-left:1rem !important}.ps-4{padding-left:1.5rem !important}.ps-5{padding-left:3rem !important}.gap-0{gap:0 !important}.gap-1{gap:.25rem !important}.gap-2{gap:.5rem !important}.gap-3{gap:1rem !important}.gap-4{gap:1.5rem !important}.gap-5{gap:3rem !important}.row-gap-0{row-gap:0 !important}.row-gap-1{row-gap:.25rem !important}.row-gap-2{row-gap:.5rem !important}.row-gap-3{row-gap:1rem !important}.row-gap-4{row-gap:1.5rem !important}.row-gap-5{row-gap:3rem !important}.column-gap-0{column-gap:0 !important}.column-gap-1{column-gap:.25rem !important}.column-gap-2{column-gap:.5rem !important}.column-gap-3{column-gap:1rem !important}.column-gap-4{column-gap:1.5rem !important}.column-gap-5{column-gap:3rem !important}.font-monospace{font-family:var(--bs-font-monospace) !important}.fs-1{font-size:calc(1.375rem + 1.5vw) !important}.fs-2{font-size:calc(1.325rem + .9vw) !important}.fs-3{font-size:calc(1.3rem + .6vw) !important}.fs-4{font-size:calc(1.275rem + .3vw) !important}.fs-5{font-size:1.25rem !important}.fs-6{font-size:1rem !important}.fst-italic{font-style:italic !important}.fst-normal{font-style:normal !important}.fw-lighter{font-weight:lighter !important}.fw-light{font-weight:300 !important}.fw-normal{font-weight:400 !important}.fw-medium{font-weight:500 !important}.fw-semibold{font-weight:600 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-default{--bs-text-opacity: 1;color:rgba(var(--bs-default-rgb), var(--bs-text-opacity)) !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,0.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,0.5) !important}.text-body-secondary{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-body-tertiary{--bs-text-opacity: 1;color:var(--bs-tertiary-color) !important}.text-body-emphasis{--bs-text-opacity: 1;color:var(--bs-emphasis-color) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: .25}.text-opacity-50{--bs-text-opacity: .5}.text-opacity-75{--bs-text-opacity: .75}.text-opacity-100{--bs-text-opacity: 1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis) !important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis) !important}.text-success-emphasis{color:var(--bs-success-text-emphasis) !important}.text-info-emphasis{color:var(--bs-info-text-emphasis) !important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis) !important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis) !important}.text-light-emphasis{color:var(--bs-light-text-emphasis) !important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis) !important}.link-opacity-10{--bs-link-opacity: .1}.link-opacity-10-hover:hover{--bs-link-opacity: .1}.link-opacity-25{--bs-link-opacity: .25}.link-opacity-25-hover:hover{--bs-link-opacity: .25}.link-opacity-50{--bs-link-opacity: .5}.link-opacity-50-hover:hover{--bs-link-opacity: .5}.link-opacity-75{--bs-link-opacity: .75}.link-opacity-75-hover:hover{--bs-link-opacity: .75}.link-opacity-100{--bs-link-opacity: 1}.link-opacity-100-hover:hover{--bs-link-opacity: 1}.link-offset-1{text-underline-offset:.125em !important}.link-offset-1-hover:hover{text-underline-offset:.125em !important}.link-offset-2{text-underline-offset:.25em !important}.link-offset-2-hover:hover{text-underline-offset:.25em !important}.link-offset-3{text-underline-offset:.375em !important}.link-offset-3-hover:hover{text-underline-offset:.375em !important}.link-underline-default{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-default-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-primary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-secondary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-success{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-info{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-warning{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-danger{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-light{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-dark{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important}.link-underline{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-underline-opacity-0{--bs-link-underline-opacity: 0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity: 0}.link-underline-opacity-10{--bs-link-underline-opacity: .1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity: .1}.link-underline-opacity-25{--bs-link-underline-opacity: .25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity: .25}.link-underline-opacity-50{--bs-link-underline-opacity: .5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity: .5}.link-underline-opacity-75{--bs-link-underline-opacity: .75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity: .75}.link-underline-opacity-100{--bs-link-underline-opacity: 1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity: 1}.bg-default{--bs-bg-opacity: 1;background-color:rgba(var(--bs-default-rgb), var(--bs-bg-opacity)) !important}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-body-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-body-tertiary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-opacity-10{--bs-bg-opacity: .1}.bg-opacity-25{--bs-bg-opacity: .25}.bg-opacity-50{--bs-bg-opacity: .5}.bg-opacity-75{--bs-bg-opacity: .75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle) !important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle) !important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle) !important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle) !important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle) !important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle) !important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle) !important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle) !important}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:var(--bs-border-radius) !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:var(--bs-border-radius-sm) !important}.rounded-2{border-radius:var(--bs-border-radius) !important}.rounded-3{border-radius:var(--bs-border-radius-lg) !important}.rounded-4{border-radius:var(--bs-border-radius-xl) !important}.rounded-5{border-radius:var(--bs-border-radius-xxl) !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}.rounded-top{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-0{border-top-left-radius:0 !important;border-top-right-radius:0 !important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm) !important;border-top-right-radius:var(--bs-border-radius-sm) !important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg) !important;border-top-right-radius:var(--bs-border-radius-lg) !important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl) !important;border-top-right-radius:var(--bs-border-radius-xl) !important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl) !important;border-top-right-radius:var(--bs-border-radius-xxl) !important}.rounded-top-circle{border-top-left-radius:50% !important;border-top-right-radius:50% !important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill) !important;border-top-right-radius:var(--bs-border-radius-pill) !important}.rounded-end{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-0{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm) !important;border-bottom-right-radius:var(--bs-border-radius-sm) !important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg) !important;border-bottom-right-radius:var(--bs-border-radius-lg) !important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl) !important;border-bottom-right-radius:var(--bs-border-radius-xl) !important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-right-radius:var(--bs-border-radius-xxl) !important}.rounded-end-circle{border-top-right-radius:50% !important;border-bottom-right-radius:50% !important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill) !important;border-bottom-right-radius:var(--bs-border-radius-pill) !important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-0{border-bottom-right-radius:0 !important;border-bottom-left-radius:0 !important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm) !important;border-bottom-left-radius:var(--bs-border-radius-sm) !important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg) !important;border-bottom-left-radius:var(--bs-border-radius-lg) !important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl) !important;border-bottom-left-radius:var(--bs-border-radius-xl) !important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-left-radius:var(--bs-border-radius-xxl) !important}.rounded-bottom-circle{border-bottom-right-radius:50% !important;border-bottom-left-radius:50% !important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill) !important;border-bottom-left-radius:var(--bs-border-radius-pill) !important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-0{border-bottom-left-radius:0 !important;border-top-left-radius:0 !important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm) !important;border-top-left-radius:var(--bs-border-radius-sm) !important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg) !important;border-top-left-radius:var(--bs-border-radius-lg) !important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl) !important;border-top-left-radius:var(--bs-border-radius-xl) !important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl) !important;border-top-left-radius:var(--bs-border-radius-xxl) !important}.rounded-start-circle{border-bottom-left-radius:50% !important;border-top-left-radius:50% !important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill) !important;border-top-left-radius:var(--bs-border-radius-pill) !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}.z-n1{z-index:-1 !important}.z-0{z-index:0 !important}.z-1{z-index:1 !important}.z-2{z-index:2 !important}.z-3{z-index:3 !important}@media (min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.object-fit-sm-contain{object-fit:contain !important}.object-fit-sm-cover{object-fit:cover !important}.object-fit-sm-fill{object-fit:fill !important}.object-fit-sm-scale{object-fit:scale-down !important}.object-fit-sm-none{object-fit:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-inline-grid{display:inline-grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.25rem !important}.m-sm-2{margin:.5rem !important}.m-sm-3{margin:1rem !important}.m-sm-4{margin:1.5rem !important}.m-sm-5{margin:3rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-sm-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-sm-3{margin-right:1rem !important;margin-left:1rem !important}.mx-sm-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-sm-5{margin-right:3rem !important;margin-left:3rem !important}.mx-sm-auto{margin-right:auto !important;margin-left:auto !important}.my-sm-0{margin-top:0 !important;margin-bottom:0 !important}.my-sm-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-sm-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-sm-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-sm-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-sm-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.25rem !important}.mt-sm-2{margin-top:.5rem !important}.mt-sm-3{margin-top:1rem !important}.mt-sm-4{margin-top:1.5rem !important}.mt-sm-5{margin-top:3rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.25rem !important}.me-sm-2{margin-right:.5rem !important}.me-sm-3{margin-right:1rem !important}.me-sm-4{margin-right:1.5rem !important}.me-sm-5{margin-right:3rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.25rem !important}.mb-sm-2{margin-bottom:.5rem !important}.mb-sm-3{margin-bottom:1rem !important}.mb-sm-4{margin-bottom:1.5rem !important}.mb-sm-5{margin-bottom:3rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.25rem !important}.ms-sm-2{margin-left:.5rem !important}.ms-sm-3{margin-left:1rem !important}.ms-sm-4{margin-left:1.5rem !important}.ms-sm-5{margin-left:3rem !important}.ms-sm-auto{margin-left:auto !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.25rem !important}.p-sm-2{padding:.5rem !important}.p-sm-3{padding:1rem !important}.p-sm-4{padding:1.5rem !important}.p-sm-5{padding:3rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-sm-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-sm-3{padding-right:1rem !important;padding-left:1rem !important}.px-sm-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-sm-5{padding-right:3rem !important;padding-left:3rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-sm-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-sm-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-sm-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-sm-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.25rem !important}.pt-sm-2{padding-top:.5rem !important}.pt-sm-3{padding-top:1rem !important}.pt-sm-4{padding-top:1.5rem !important}.pt-sm-5{padding-top:3rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.25rem !important}.pe-sm-2{padding-right:.5rem !important}.pe-sm-3{padding-right:1rem !important}.pe-sm-4{padding-right:1.5rem !important}.pe-sm-5{padding-right:3rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.25rem !important}.pb-sm-2{padding-bottom:.5rem !important}.pb-sm-3{padding-bottom:1rem !important}.pb-sm-4{padding-bottom:1.5rem !important}.pb-sm-5{padding-bottom:3rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.25rem !important}.ps-sm-2{padding-left:.5rem !important}.ps-sm-3{padding-left:1rem !important}.ps-sm-4{padding-left:1.5rem !important}.ps-sm-5{padding-left:3rem !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.25rem !important}.gap-sm-2{gap:.5rem !important}.gap-sm-3{gap:1rem !important}.gap-sm-4{gap:1.5rem !important}.gap-sm-5{gap:3rem !important}.row-gap-sm-0{row-gap:0 !important}.row-gap-sm-1{row-gap:.25rem !important}.row-gap-sm-2{row-gap:.5rem !important}.row-gap-sm-3{row-gap:1rem !important}.row-gap-sm-4{row-gap:1.5rem !important}.row-gap-sm-5{row-gap:3rem !important}.column-gap-sm-0{column-gap:0 !important}.column-gap-sm-1{column-gap:.25rem !important}.column-gap-sm-2{column-gap:.5rem !important}.column-gap-sm-3{column-gap:1rem !important}.column-gap-sm-4{column-gap:1.5rem !important}.column-gap-sm-5{column-gap:3rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media (min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.object-fit-md-contain{object-fit:contain !important}.object-fit-md-cover{object-fit:cover !important}.object-fit-md-fill{object-fit:fill !important}.object-fit-md-scale{object-fit:scale-down !important}.object-fit-md-none{object-fit:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-inline-grid{display:inline-grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.25rem !important}.m-md-2{margin:.5rem !important}.m-md-3{margin:1rem !important}.m-md-4{margin:1.5rem !important}.m-md-5{margin:3rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-md-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-md-3{margin-right:1rem !important;margin-left:1rem !important}.mx-md-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-md-5{margin-right:3rem !important;margin-left:3rem !important}.mx-md-auto{margin-right:auto !important;margin-left:auto !important}.my-md-0{margin-top:0 !important;margin-bottom:0 !important}.my-md-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-md-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-md-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-md-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-md-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.25rem !important}.mt-md-2{margin-top:.5rem !important}.mt-md-3{margin-top:1rem !important}.mt-md-4{margin-top:1.5rem !important}.mt-md-5{margin-top:3rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.25rem !important}.me-md-2{margin-right:.5rem !important}.me-md-3{margin-right:1rem !important}.me-md-4{margin-right:1.5rem !important}.me-md-5{margin-right:3rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.25rem !important}.mb-md-2{margin-bottom:.5rem !important}.mb-md-3{margin-bottom:1rem !important}.mb-md-4{margin-bottom:1.5rem !important}.mb-md-5{margin-bottom:3rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.25rem !important}.ms-md-2{margin-left:.5rem !important}.ms-md-3{margin-left:1rem !important}.ms-md-4{margin-left:1.5rem !important}.ms-md-5{margin-left:3rem !important}.ms-md-auto{margin-left:auto !important}.p-md-0{padding:0 !important}.p-md-1{padding:.25rem !important}.p-md-2{padding:.5rem !important}.p-md-3{padding:1rem !important}.p-md-4{padding:1.5rem !important}.p-md-5{padding:3rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-md-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-md-3{padding-right:1rem !important;padding-left:1rem !important}.px-md-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-md-5{padding-right:3rem !important;padding-left:3rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-md-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-md-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-md-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-md-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.25rem !important}.pt-md-2{padding-top:.5rem !important}.pt-md-3{padding-top:1rem !important}.pt-md-4{padding-top:1.5rem !important}.pt-md-5{padding-top:3rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.25rem !important}.pe-md-2{padding-right:.5rem !important}.pe-md-3{padding-right:1rem !important}.pe-md-4{padding-right:1.5rem !important}.pe-md-5{padding-right:3rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.25rem !important}.pb-md-2{padding-bottom:.5rem !important}.pb-md-3{padding-bottom:1rem !important}.pb-md-4{padding-bottom:1.5rem !important}.pb-md-5{padding-bottom:3rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.25rem !important}.ps-md-2{padding-left:.5rem !important}.ps-md-3{padding-left:1rem !important}.ps-md-4{padding-left:1.5rem !important}.ps-md-5{padding-left:3rem !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.25rem !important}.gap-md-2{gap:.5rem !important}.gap-md-3{gap:1rem !important}.gap-md-4{gap:1.5rem !important}.gap-md-5{gap:3rem !important}.row-gap-md-0{row-gap:0 !important}.row-gap-md-1{row-gap:.25rem !important}.row-gap-md-2{row-gap:.5rem !important}.row-gap-md-3{row-gap:1rem !important}.row-gap-md-4{row-gap:1.5rem !important}.row-gap-md-5{row-gap:3rem !important}.column-gap-md-0{column-gap:0 !important}.column-gap-md-1{column-gap:.25rem !important}.column-gap-md-2{column-gap:.5rem !important}.column-gap-md-3{column-gap:1rem !important}.column-gap-md-4{column-gap:1.5rem !important}.column-gap-md-5{column-gap:3rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media (min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.object-fit-lg-contain{object-fit:contain !important}.object-fit-lg-cover{object-fit:cover !important}.object-fit-lg-fill{object-fit:fill !important}.object-fit-lg-scale{object-fit:scale-down !important}.object-fit-lg-none{object-fit:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-inline-grid{display:inline-grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.25rem !important}.m-lg-2{margin:.5rem !important}.m-lg-3{margin:1rem !important}.m-lg-4{margin:1.5rem !important}.m-lg-5{margin:3rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-lg-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-lg-3{margin-right:1rem !important;margin-left:1rem !important}.mx-lg-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-lg-5{margin-right:3rem !important;margin-left:3rem !important}.mx-lg-auto{margin-right:auto !important;margin-left:auto !important}.my-lg-0{margin-top:0 !important;margin-bottom:0 !important}.my-lg-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-lg-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-lg-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-lg-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-lg-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.25rem !important}.mt-lg-2{margin-top:.5rem !important}.mt-lg-3{margin-top:1rem !important}.mt-lg-4{margin-top:1.5rem !important}.mt-lg-5{margin-top:3rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.25rem !important}.me-lg-2{margin-right:.5rem !important}.me-lg-3{margin-right:1rem !important}.me-lg-4{margin-right:1.5rem !important}.me-lg-5{margin-right:3rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.25rem !important}.mb-lg-2{margin-bottom:.5rem !important}.mb-lg-3{margin-bottom:1rem !important}.mb-lg-4{margin-bottom:1.5rem !important}.mb-lg-5{margin-bottom:3rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.25rem !important}.ms-lg-2{margin-left:.5rem !important}.ms-lg-3{margin-left:1rem !important}.ms-lg-4{margin-left:1.5rem !important}.ms-lg-5{margin-left:3rem !important}.ms-lg-auto{margin-left:auto !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.25rem !important}.p-lg-2{padding:.5rem !important}.p-lg-3{padding:1rem !important}.p-lg-4{padding:1.5rem !important}.p-lg-5{padding:3rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-lg-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-lg-3{padding-right:1rem !important;padding-left:1rem !important}.px-lg-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-lg-5{padding-right:3rem !important;padding-left:3rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-lg-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-lg-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-lg-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-lg-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.25rem !important}.pt-lg-2{padding-top:.5rem !important}.pt-lg-3{padding-top:1rem !important}.pt-lg-4{padding-top:1.5rem !important}.pt-lg-5{padding-top:3rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.25rem !important}.pe-lg-2{padding-right:.5rem !important}.pe-lg-3{padding-right:1rem !important}.pe-lg-4{padding-right:1.5rem !important}.pe-lg-5{padding-right:3rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.25rem !important}.pb-lg-2{padding-bottom:.5rem !important}.pb-lg-3{padding-bottom:1rem !important}.pb-lg-4{padding-bottom:1.5rem !important}.pb-lg-5{padding-bottom:3rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.25rem !important}.ps-lg-2{padding-left:.5rem !important}.ps-lg-3{padding-left:1rem !important}.ps-lg-4{padding-left:1.5rem !important}.ps-lg-5{padding-left:3rem !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.25rem !important}.gap-lg-2{gap:.5rem !important}.gap-lg-3{gap:1rem !important}.gap-lg-4{gap:1.5rem !important}.gap-lg-5{gap:3rem !important}.row-gap-lg-0{row-gap:0 !important}.row-gap-lg-1{row-gap:.25rem !important}.row-gap-lg-2{row-gap:.5rem !important}.row-gap-lg-3{row-gap:1rem !important}.row-gap-lg-4{row-gap:1.5rem !important}.row-gap-lg-5{row-gap:3rem !important}.column-gap-lg-0{column-gap:0 !important}.column-gap-lg-1{column-gap:.25rem !important}.column-gap-lg-2{column-gap:.5rem !important}.column-gap-lg-3{column-gap:1rem !important}.column-gap-lg-4{column-gap:1.5rem !important}.column-gap-lg-5{column-gap:3rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media (min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.object-fit-xl-contain{object-fit:contain !important}.object-fit-xl-cover{object-fit:cover !important}.object-fit-xl-fill{object-fit:fill !important}.object-fit-xl-scale{object-fit:scale-down !important}.object-fit-xl-none{object-fit:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-inline-grid{display:inline-grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.25rem !important}.m-xl-2{margin:.5rem !important}.m-xl-3{margin:1rem !important}.m-xl-4{margin:1.5rem !important}.m-xl-5{margin:3rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xl-auto{margin-right:auto !important;margin-left:auto !important}.my-xl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.25rem !important}.mt-xl-2{margin-top:.5rem !important}.mt-xl-3{margin-top:1rem !important}.mt-xl-4{margin-top:1.5rem !important}.mt-xl-5{margin-top:3rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.25rem !important}.me-xl-2{margin-right:.5rem !important}.me-xl-3{margin-right:1rem !important}.me-xl-4{margin-right:1.5rem !important}.me-xl-5{margin-right:3rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.25rem !important}.mb-xl-2{margin-bottom:.5rem !important}.mb-xl-3{margin-bottom:1rem !important}.mb-xl-4{margin-bottom:1.5rem !important}.mb-xl-5{margin-bottom:3rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.25rem !important}.ms-xl-2{margin-left:.5rem !important}.ms-xl-3{margin-left:1rem !important}.ms-xl-4{margin-left:1.5rem !important}.ms-xl-5{margin-left:3rem !important}.ms-xl-auto{margin-left:auto !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.25rem !important}.p-xl-2{padding:.5rem !important}.p-xl-3{padding:1rem !important}.p-xl-4{padding:1.5rem !important}.p-xl-5{padding:3rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.25rem !important}.pt-xl-2{padding-top:.5rem !important}.pt-xl-3{padding-top:1rem !important}.pt-xl-4{padding-top:1.5rem !important}.pt-xl-5{padding-top:3rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.25rem !important}.pe-xl-2{padding-right:.5rem !important}.pe-xl-3{padding-right:1rem !important}.pe-xl-4{padding-right:1.5rem !important}.pe-xl-5{padding-right:3rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.25rem !important}.pb-xl-2{padding-bottom:.5rem !important}.pb-xl-3{padding-bottom:1rem !important}.pb-xl-4{padding-bottom:1.5rem !important}.pb-xl-5{padding-bottom:3rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.25rem !important}.ps-xl-2{padding-left:.5rem !important}.ps-xl-3{padding-left:1rem !important}.ps-xl-4{padding-left:1.5rem !important}.ps-xl-5{padding-left:3rem !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.25rem !important}.gap-xl-2{gap:.5rem !important}.gap-xl-3{gap:1rem !important}.gap-xl-4{gap:1.5rem !important}.gap-xl-5{gap:3rem !important}.row-gap-xl-0{row-gap:0 !important}.row-gap-xl-1{row-gap:.25rem !important}.row-gap-xl-2{row-gap:.5rem !important}.row-gap-xl-3{row-gap:1rem !important}.row-gap-xl-4{row-gap:1.5rem !important}.row-gap-xl-5{row-gap:3rem !important}.column-gap-xl-0{column-gap:0 !important}.column-gap-xl-1{column-gap:.25rem !important}.column-gap-xl-2{column-gap:.5rem !important}.column-gap-xl-3{column-gap:1rem !important}.column-gap-xl-4{column-gap:1.5rem !important}.column-gap-xl-5{column-gap:3rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media (min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.object-fit-xxl-contain{object-fit:contain !important}.object-fit-xxl-cover{object-fit:cover !important}.object-fit-xxl-fill{object-fit:fill !important}.object-fit-xxl-scale{object-fit:scale-down !important}.object-fit-xxl-none{object-fit:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-inline-grid{display:inline-grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.25rem !important}.m-xxl-2{margin:.5rem !important}.m-xxl-3{margin:1rem !important}.m-xxl-4{margin:1.5rem !important}.m-xxl-5{margin:3rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xxl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xxl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xxl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xxl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xxl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xxl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xxl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xxl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.25rem !important}.mt-xxl-2{margin-top:.5rem !important}.mt-xxl-3{margin-top:1rem !important}.mt-xxl-4{margin-top:1.5rem !important}.mt-xxl-5{margin-top:3rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.25rem !important}.me-xxl-2{margin-right:.5rem !important}.me-xxl-3{margin-right:1rem !important}.me-xxl-4{margin-right:1.5rem !important}.me-xxl-5{margin-right:3rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.25rem !important}.mb-xxl-2{margin-bottom:.5rem !important}.mb-xxl-3{margin-bottom:1rem !important}.mb-xxl-4{margin-bottom:1.5rem !important}.mb-xxl-5{margin-bottom:3rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.25rem !important}.ms-xxl-2{margin-left:.5rem !important}.ms-xxl-3{margin-left:1rem !important}.ms-xxl-4{margin-left:1.5rem !important}.ms-xxl-5{margin-left:3rem !important}.ms-xxl-auto{margin-left:auto !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.25rem !important}.p-xxl-2{padding:.5rem !important}.p-xxl-3{padding:1rem !important}.p-xxl-4{padding:1.5rem !important}.p-xxl-5{padding:3rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xxl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xxl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xxl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xxl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xxl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xxl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xxl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xxl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.25rem !important}.pt-xxl-2{padding-top:.5rem !important}.pt-xxl-3{padding-top:1rem !important}.pt-xxl-4{padding-top:1.5rem !important}.pt-xxl-5{padding-top:3rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.25rem !important}.pe-xxl-2{padding-right:.5rem !important}.pe-xxl-3{padding-right:1rem !important}.pe-xxl-4{padding-right:1.5rem !important}.pe-xxl-5{padding-right:3rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.25rem !important}.pb-xxl-2{padding-bottom:.5rem !important}.pb-xxl-3{padding-bottom:1rem !important}.pb-xxl-4{padding-bottom:1.5rem !important}.pb-xxl-5{padding-bottom:3rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.25rem !important}.ps-xxl-2{padding-left:.5rem !important}.ps-xxl-3{padding-left:1rem !important}.ps-xxl-4{padding-left:1.5rem !important}.ps-xxl-5{padding-left:3rem !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.25rem !important}.gap-xxl-2{gap:.5rem !important}.gap-xxl-3{gap:1rem !important}.gap-xxl-4{gap:1.5rem !important}.gap-xxl-5{gap:3rem !important}.row-gap-xxl-0{row-gap:0 !important}.row-gap-xxl-1{row-gap:.25rem !important}.row-gap-xxl-2{row-gap:.5rem !important}.row-gap-xxl-3{row-gap:1rem !important}.row-gap-xxl-4{row-gap:1.5rem !important}.row-gap-xxl-5{row-gap:3rem !important}.column-gap-xxl-0{column-gap:0 !important}.column-gap-xxl-1{column-gap:.25rem !important}.column-gap-xxl-2{column-gap:.5rem !important}.column-gap-xxl-3{column-gap:1rem !important}.column-gap-xxl-4{column-gap:1.5rem !important}.column-gap-xxl-5{column-gap:3rem !important}.text-xxl-start{text-align:left !important}.text-xxl-end{text-align:right !important}.text-xxl-center{text-align:center !important}}.bg-default{color:#000}.bg-primary{color:#fff}.bg-secondary{color:#fff}.bg-success{color:#fff}.bg-info{color:#000}.bg-warning{color:#000}.bg-danger{color:#fff}.bg-light{color:#000}.bg-dark{color:#fff}@media (min-width: 1200px){.fs-1{font-size:2.5rem !important}.fs-2{font-size:2rem !important}.fs-3{font-size:1.75rem !important}.fs-4{font-size:1.5rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-inline-grid{display:inline-grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}.table th[align=left]{text-align:left}.table th[align=right]{text-align:right}.table th[align=center]{text-align:center}:root{--bslib-spacer: 1rem;--bslib-mb-spacer: var(--bslib-spacer, 1rem)}.bslib-mb-spacing{margin-bottom:var(--bslib-mb-spacer)}.bslib-gap-spacing{gap:var(--bslib-mb-spacer)}.bslib-gap-spacing>.bslib-mb-spacing,.bslib-gap-spacing>.form-group,.bslib-gap-spacing>p,.bslib-gap-spacing>pre,.bslib-gap-spacing>.shiny-html-output>.bslib-mb-spacing,.bslib-gap-spacing>.shiny-html-output>.form-group,.bslib-gap-spacing>.shiny-html-output>p,.bslib-gap-spacing>.shiny-html-output>pre,.bslib-gap-spacing>.shiny-panel-conditional>.bslib-mb-spacing,.bslib-gap-spacing>.shiny-panel-conditional>.form-group,.bslib-gap-spacing>.shiny-panel-conditional>p,.bslib-gap-spacing>.shiny-panel-conditional>pre{margin-bottom:0}.html-fill-container>.html-fill-item.bslib-mb-spacing{margin-bottom:0}.tab-content>.tab-pane.html-fill-container{display:none}.tab-content>.active.html-fill-container{display:flex}.tab-content.html-fill-container{padding:0}.bg-blue{--bslib-color-bg: #0d6efd;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-blue{--bslib-color-fg: #0d6efd;color:var(--bslib-color-fg)}.bg-indigo{--bslib-color-bg: #6610f2;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-indigo{--bslib-color-fg: #6610f2;color:var(--bslib-color-fg)}.bg-purple{--bslib-color-bg: #6f42c1;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-purple{--bslib-color-fg: #6f42c1;color:var(--bslib-color-fg)}.bg-pink{--bslib-color-bg: #d63384;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-pink{--bslib-color-fg: #d63384;color:var(--bslib-color-fg)}.bg-red{--bslib-color-bg: #dc3545;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-red{--bslib-color-fg: #dc3545;color:var(--bslib-color-fg)}.bg-orange{--bslib-color-bg: #fd7e14;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-orange{--bslib-color-fg: #fd7e14;color:var(--bslib-color-fg)}.bg-yellow{--bslib-color-bg: #ffc107;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-yellow{--bslib-color-fg: #ffc107;color:var(--bslib-color-fg)}.bg-green{--bslib-color-bg: #198754;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-green{--bslib-color-fg: #198754;color:var(--bslib-color-fg)}.bg-teal{--bslib-color-bg: #20c997;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-teal{--bslib-color-fg: #20c997;color:var(--bslib-color-fg)}.bg-cyan{--bslib-color-bg: #0dcaf0;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-cyan{--bslib-color-fg: #0dcaf0;color:var(--bslib-color-fg)}.text-default{--bslib-color-fg: #dee2e6}.bg-default{--bslib-color-bg: #dee2e6;--bslib-color-fg: #000}.text-primary{--bslib-color-fg: #BF281B}.bg-primary{--bslib-color-bg: #BF281B;--bslib-color-fg: #fff}.text-secondary{--bslib-color-fg: #6c757d}.bg-secondary{--bslib-color-bg: #6c757d;--bslib-color-fg: #fff}.text-success{--bslib-color-fg: #198754}.bg-success{--bslib-color-bg: #198754;--bslib-color-fg: #fff}.text-info{--bslib-color-fg: #0dcaf0}.bg-info{--bslib-color-bg: #0dcaf0;--bslib-color-fg: #000}.text-warning{--bslib-color-fg: #ffc107}.bg-warning{--bslib-color-bg: #ffc107;--bslib-color-fg: #000}.text-danger{--bslib-color-fg: #dc3545}.bg-danger{--bslib-color-bg: #dc3545;--bslib-color-fg: #fff}.text-light{--bslib-color-fg: #f8f9fa}.bg-light{--bslib-color-bg: #f8f9fa;--bslib-color-fg: #000}.text-dark{--bslib-color-fg: #212529}.bg-dark{--bslib-color-bg: #212529;--bslib-color-fg: #fff}.bg-gradient-blue-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #3148f9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #3148f9;color:#fff}.bg-gradient-blue-purple{--bslib-color-fg: #fff;--bslib-color-bg: #345ce5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #345ce5;color:#fff}.bg-gradient-blue-pink{--bslib-color-fg: #fff;--bslib-color-bg: #5d56cd;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #5d56cd;color:#fff}.bg-gradient-blue-red{--bslib-color-fg: #fff;--bslib-color-bg: #6057b3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #6057b3;color:#fff}.bg-gradient-blue-orange{--bslib-color-fg: #fff;--bslib-color-bg: #6d74a0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #6d74a0;color:#fff}.bg-gradient-blue-yellow{--bslib-color-fg: #000;--bslib-color-bg: #6e8f9b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #6e8f9b;color:#000}.bg-gradient-blue-green{--bslib-color-fg: #fff;--bslib-color-bg: #1278b9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #1278b9;color:#fff}.bg-gradient-blue-teal{--bslib-color-fg: #000;--bslib-color-bg: #1592d4;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #1592d4;color:#000}.bg-gradient-blue-cyan{--bslib-color-fg: #000;--bslib-color-bg: #0d93f8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0d6efd var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #0d93f8;color:#000}.bg-gradient-indigo-blue{--bslib-color-fg: #fff;--bslib-color-bg: #4236f6;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #4236f6;color:#fff}.bg-gradient-indigo-purple{--bslib-color-fg: #fff;--bslib-color-bg: #6a24de;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #6a24de;color:#fff}.bg-gradient-indigo-pink{--bslib-color-fg: #fff;--bslib-color-bg: #931ec6;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #931ec6;color:#fff}.bg-gradient-indigo-red{--bslib-color-fg: #fff;--bslib-color-bg: #951fad;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #951fad;color:#fff}.bg-gradient-indigo-orange{--bslib-color-fg: #fff;--bslib-color-bg: #a23c99;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #a23c99;color:#fff}.bg-gradient-indigo-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #a35794;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #a35794;color:#fff}.bg-gradient-indigo-green{--bslib-color-fg: #fff;--bslib-color-bg: #4740b3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #4740b3;color:#fff}.bg-gradient-indigo-teal{--bslib-color-fg: #fff;--bslib-color-bg: #4a5ace;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #4a5ace;color:#fff}.bg-gradient-indigo-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #425af1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #425af1;color:#fff}.bg-gradient-purple-blue{--bslib-color-fg: #fff;--bslib-color-bg: #4854d9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #4854d9;color:#fff}.bg-gradient-purple-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #6b2ed5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #6b2ed5;color:#fff}.bg-gradient-purple-pink{--bslib-color-fg: #fff;--bslib-color-bg: #983ca9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #983ca9;color:#fff}.bg-gradient-purple-red{--bslib-color-fg: #fff;--bslib-color-bg: #9b3d8f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #9b3d8f;color:#fff}.bg-gradient-purple-orange{--bslib-color-fg: #fff;--bslib-color-bg: #a85a7c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #a85a7c;color:#fff}.bg-gradient-purple-yellow{--bslib-color-fg: #000;--bslib-color-bg: #a97577;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #a97577;color:#000}.bg-gradient-purple-green{--bslib-color-fg: #fff;--bslib-color-bg: #4d5e95;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #4d5e95;color:#fff}.bg-gradient-purple-teal{--bslib-color-fg: #fff;--bslib-color-bg: #4f78b0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #4f78b0;color:#fff}.bg-gradient-purple-cyan{--bslib-color-fg: #000;--bslib-color-bg: #4878d4;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6f42c1 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #4878d4;color:#000}.bg-gradient-pink-blue{--bslib-color-fg: #fff;--bslib-color-bg: #864bb4;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #864bb4;color:#fff}.bg-gradient-pink-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #a925b0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #a925b0;color:#fff}.bg-gradient-pink-purple{--bslib-color-fg: #fff;--bslib-color-bg: #ad399c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #ad399c;color:#fff}.bg-gradient-pink-red{--bslib-color-fg: #fff;--bslib-color-bg: #d8346b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #d8346b;color:#fff}.bg-gradient-pink-orange{--bslib-color-fg: #000;--bslib-color-bg: #e65157;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #e65157;color:#000}.bg-gradient-pink-yellow{--bslib-color-fg: #000;--bslib-color-bg: #e66c52;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #e66c52;color:#000}.bg-gradient-pink-green{--bslib-color-fg: #fff;--bslib-color-bg: #8a5571;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #8a5571;color:#fff}.bg-gradient-pink-teal{--bslib-color-fg: #000;--bslib-color-bg: #8d6f8c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #8d6f8c;color:#000}.bg-gradient-pink-cyan{--bslib-color-fg: #000;--bslib-color-bg: #866faf;background:linear-gradient(var(--bg-gradient-deg, 140deg), #d63384 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #866faf;color:#000}.bg-gradient-red-blue{--bslib-color-fg: #fff;--bslib-color-bg: #894c8f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #894c8f;color:#fff}.bg-gradient-red-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #ad268a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #ad268a;color:#fff}.bg-gradient-red-purple{--bslib-color-fg: #fff;--bslib-color-bg: #b03a77;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #b03a77;color:#fff}.bg-gradient-red-pink{--bslib-color-fg: #fff;--bslib-color-bg: #da345e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #da345e;color:#fff}.bg-gradient-red-orange{--bslib-color-fg: #000;--bslib-color-bg: #e95231;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #e95231;color:#000}.bg-gradient-red-yellow{--bslib-color-fg: #000;--bslib-color-bg: #ea6d2c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #ea6d2c;color:#000}.bg-gradient-red-green{--bslib-color-fg: #fff;--bslib-color-bg: #8e564b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #8e564b;color:#fff}.bg-gradient-red-teal{--bslib-color-fg: #000;--bslib-color-bg: #917066;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #917066;color:#000}.bg-gradient-red-cyan{--bslib-color-fg: #000;--bslib-color-bg: #897189;background:linear-gradient(var(--bg-gradient-deg, 140deg), #dc3545 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #897189;color:#000}.bg-gradient-orange-blue{--bslib-color-fg: #000;--bslib-color-bg: #9d7871;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #9d7871;color:#000}.bg-gradient-orange-indigo{--bslib-color-fg: #000;--bslib-color-bg: #c1526d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #c1526d;color:#000}.bg-gradient-orange-purple{--bslib-color-fg: #000;--bslib-color-bg: #c46659;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #c46659;color:#000}.bg-gradient-orange-pink{--bslib-color-fg: #000;--bslib-color-bg: #ed6041;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #ed6041;color:#000}.bg-gradient-orange-red{--bslib-color-fg: #000;--bslib-color-bg: #f06128;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #f06128;color:#000}.bg-gradient-orange-yellow{--bslib-color-fg: #000;--bslib-color-bg: #fe990f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #fe990f;color:#000}.bg-gradient-orange-green{--bslib-color-fg: #000;--bslib-color-bg: #a2822e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #a2822e;color:#000}.bg-gradient-orange-teal{--bslib-color-fg: #000;--bslib-color-bg: #a59c48;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #a59c48;color:#000}.bg-gradient-orange-cyan{--bslib-color-fg: #000;--bslib-color-bg: #9d9c6c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #fd7e14 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #9d9c6c;color:#000}.bg-gradient-yellow-blue{--bslib-color-fg: #000;--bslib-color-bg: #9ea069;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #9ea069;color:#000}.bg-gradient-yellow-indigo{--bslib-color-fg: #000;--bslib-color-bg: #c27a65;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #c27a65;color:#000}.bg-gradient-yellow-purple{--bslib-color-fg: #000;--bslib-color-bg: #c58e51;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #c58e51;color:#000}.bg-gradient-yellow-pink{--bslib-color-fg: #000;--bslib-color-bg: #ef8839;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #ef8839;color:#000}.bg-gradient-yellow-red{--bslib-color-fg: #000;--bslib-color-bg: #f18920;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #f18920;color:#000}.bg-gradient-yellow-orange{--bslib-color-fg: #000;--bslib-color-bg: #fea60c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #fea60c;color:#000}.bg-gradient-yellow-green{--bslib-color-fg: #000;--bslib-color-bg: #a3aa26;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #a3aa26;color:#000}.bg-gradient-yellow-teal{--bslib-color-fg: #000;--bslib-color-bg: #a6c441;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #a6c441;color:#000}.bg-gradient-yellow-cyan{--bslib-color-fg: #000;--bslib-color-bg: #9ec564;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ffc107 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #9ec564;color:#000}.bg-gradient-green-blue{--bslib-color-fg: #fff;--bslib-color-bg: #147d98;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #147d98;color:#fff}.bg-gradient-green-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #385793;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #385793;color:#fff}.bg-gradient-green-purple{--bslib-color-fg: #fff;--bslib-color-bg: #3b6b80;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #3b6b80;color:#fff}.bg-gradient-green-pink{--bslib-color-fg: #fff;--bslib-color-bg: #656567;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #656567;color:#fff}.bg-gradient-green-red{--bslib-color-fg: #fff;--bslib-color-bg: #67664e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #67664e;color:#fff}.bg-gradient-green-orange{--bslib-color-fg: #000;--bslib-color-bg: #74833a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #74833a;color:#000}.bg-gradient-green-yellow{--bslib-color-fg: #000;--bslib-color-bg: #759e35;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #759e35;color:#000}.bg-gradient-green-teal{--bslib-color-fg: #000;--bslib-color-bg: #1ca16f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #1ca16f;color:#000}.bg-gradient-green-cyan{--bslib-color-fg: #000;--bslib-color-bg: #14a292;background:linear-gradient(var(--bg-gradient-deg, 140deg), #198754 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #14a292;color:#000}.bg-gradient-teal-blue{--bslib-color-fg: #000;--bslib-color-bg: #18a5c0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #18a5c0;color:#000}.bg-gradient-teal-indigo{--bslib-color-fg: #000;--bslib-color-bg: #3c7fbb;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #3c7fbb;color:#000}.bg-gradient-teal-purple{--bslib-color-fg: #000;--bslib-color-bg: #4093a8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #4093a8;color:#000}.bg-gradient-teal-pink{--bslib-color-fg: #000;--bslib-color-bg: #698d8f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #698d8f;color:#000}.bg-gradient-teal-red{--bslib-color-fg: #000;--bslib-color-bg: #6b8e76;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #6b8e76;color:#000}.bg-gradient-teal-orange{--bslib-color-fg: #000;--bslib-color-bg: #78ab63;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #78ab63;color:#000}.bg-gradient-teal-yellow{--bslib-color-fg: #000;--bslib-color-bg: #79c65d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #79c65d;color:#000}.bg-gradient-teal-green{--bslib-color-fg: #000;--bslib-color-bg: #1daf7c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #1daf7c;color:#000}.bg-gradient-teal-cyan{--bslib-color-fg: #000;--bslib-color-bg: #18c9bb;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #0dcaf0 var(--bg-gradient-end, 180%)) #18c9bb;color:#000}.bg-gradient-cyan-blue{--bslib-color-fg: #000;--bslib-color-bg: #0da5f5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #0d6efd var(--bg-gradient-end, 180%)) #0da5f5;color:#000}.bg-gradient-cyan-indigo{--bslib-color-fg: #000;--bslib-color-bg: #3180f1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #3180f1;color:#000}.bg-gradient-cyan-purple{--bslib-color-fg: #000;--bslib-color-bg: #3494dd;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #6f42c1 var(--bg-gradient-end, 180%)) #3494dd;color:#000}.bg-gradient-cyan-pink{--bslib-color-fg: #000;--bslib-color-bg: #5d8ec5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #d63384 var(--bg-gradient-end, 180%)) #5d8ec5;color:#000}.bg-gradient-cyan-red{--bslib-color-fg: #000;--bslib-color-bg: #608eac;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #dc3545 var(--bg-gradient-end, 180%)) #608eac;color:#000}.bg-gradient-cyan-orange{--bslib-color-fg: #000;--bslib-color-bg: #6dac98;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #fd7e14 var(--bg-gradient-end, 180%)) #6dac98;color:#000}.bg-gradient-cyan-yellow{--bslib-color-fg: #000;--bslib-color-bg: #6ec693;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #ffc107 var(--bg-gradient-end, 180%)) #6ec693;color:#000}.bg-gradient-cyan-green{--bslib-color-fg: #000;--bslib-color-bg: #12afb2;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #198754 var(--bg-gradient-end, 180%)) #12afb2;color:#000}.bg-gradient-cyan-teal{--bslib-color-fg: #000;--bslib-color-bg: #15cacc;background:linear-gradient(var(--bg-gradient-deg, 140deg), #0dcaf0 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #15cacc;color:#000}.row>main{max-width:50rem}@media (min-width: 1200px) and (max-width: 1399.98px){.container .row{justify-content:space-evenly}}@media (min-width: 1400px){body{font-size:18px}.col-md-3{margin-left:5rem}}.navbar-nav .nav-item>.nav-link{border-radius:.375rem;padding:0.5rem}.navbar>.container{align-items:baseline;-webkit-align-items:baseline}.navbar-light .navbar-nav .active>.nav-link{background:#e9ecef;color:#212529}.navbar-dark .navbar-nav .active>.nav-link{background:#343a40;color:#fff}.navbar-dark .navbar-nav .nav-item>.nav-link:hover,.navbar-light .navbar-nav .nav-item>.nav-link:hover{background:rgba(191,40,27,0.1)}.navbar-dark input[type="search"]{border-color:#6c757d;background-color:#212529;color:#e9ecef}input[type="search"]{border-color:#dee2e6;width:12rem}.headroom{will-change:transform;transition:transform 400ms ease}.headroom--pinned{transform:translateY(0%)}.headroom--unpinned{transform:translateY(-100%)}.row>main,.row>aside{margin-top:56px}html,body{scroll-padding:56px}@media (min-width: 576px){#toc{position:sticky;top:56px;max-height:calc(100vh - 56px - 1rem);overflow-y:auto}}aside h2,aside .h2{margin-top:1.5rem;font-size:1.25rem}aside .roles{color:#4d5154}aside .list-unstyled li{margin-bottom:0.5rem}aside .dev-status .list-unstyled li{margin-bottom:0.1rem}@media (max-width: 575.98px){aside{margin:0.5rem;width:calc(100vw - 1rem);background-color:#f8f9fa;border-color:#dee2e6;border-radius:.375rem}aside h2:first-child,aside .h2:first-child{margin-top:1rem}}body{position:relative}#toc>.nav{margin-bottom:1rem}#toc>.nav a.nav-link{color:inherit;padding:0.25rem 0.5rem;margin-bottom:2px;border-radius:.375rem;border:0 solid #dee2e6}#toc>.nav a.nav-link:hover,#toc>.nav a.nav-link:focus{background-color:rgba(191,40,27,0.1);color:#000}#toc>.nav a.nav-link.active{background-color:#e9e9ea;color:#000}#toc>.nav .nav a.nav-link{margin-left:0.5rem}#toc>.nav .nav{display:none !important}#toc>.nav a.active+.nav{display:flex !important}footer{margin:1rem 0 1rem 0;padding-top:1rem;font-size:.875em;border-top:1px solid #dee2e6;background:rgba(0,0,0,0);color:#4d5154;display:flex;column-gap:1rem}@media (max-width: 575.98px){footer{flex-direction:column}}@media (min-width: 576px){footer .pkgdown-footer-right{text-align:right}}footer div{flex:1 1 auto}html,body{height:100%}body>.container{min-height:100%;display:flex;flex-direction:column}body>.container .row{flex:1 0 auto}::selection{background-color:#f2d4d1}main img{max-width:100%;height:auto}main table{display:block;overflow:auto}body{font-display:fallback}.page-header{border-bottom:1px solid #dee2e6;padding-bottom:0.5rem;margin-bottom:0.5rem;margin-top:1.5rem}dd{margin-left:1.5rem}summary{margin-bottom:0.5rem}details{margin-bottom:1rem}.html-widget{margin-bottom:1rem}a.anchor{display:none;margin-left:5px;width:Min(0.9em, 20px);height:Min(0.9em, 20px);background-image:url(../../link.svg);background-repeat:no-repeat;background-size:Min(0.9em, 20px) Min(0.9em, 20px);background-position:center center}h2:hover .anchor,.h2:hover .anchor,h3:hover .anchor,.h3:hover .anchor,h4:hover .anchor,.h4:hover .anchor,h5:hover .anchor,.h5:hover .anchor,h6:hover .anchor,.h6:hover .anchor{display:inline-block}.orcid{color:#A6CE39;margin-right:4px}.fab{font-family:"Font Awesome 5 Brands" !important}img.logo{float:right;width:100px;margin-left:30px}.template-home img.logo{width:120px}@media (max-width: 575.98px){img.logo{width:80px}}@media (min-width: 576px){.page-header{min-height:88px}.template-home .page-header{min-height:104px}}.line-block{margin-bottom:1rem}.template-reference-index dt{font-weight:normal}.template-reference-index code{word-wrap:normal}.icon{float:right}.icon img{width:40px}a[href='#main']{position:absolute;margin:4px;padding:0.75rem;background-color:#fff;text-decoration:none;z-index:2000}a.footnote-ref{cursor:pointer}.popover{width:Min(100vw, 32rem);font-size:0.9rem;box-shadow:4px 4px 8px rgba(0,0,0,0.3)}.popover-body{padding:0.75rem}.popover-body p:last-child{margin-bottom:0}.tab-content{padding:1rem}.tabset-pills .tab-content{border:solid 1px #e5e5e5}.tab-content{display:flex}.tab-content>.tab-pane{display:block;visibility:hidden;margin-right:-100%;width:100%}.tab-content>.active{visibility:visible}div.csl-entry{clear:both}.hanging-indent div.csl-entry{margin-left:2em;text-indent:-2em}div.csl-left-margin{min-width:2em;float:left}div.csl-right-inline{margin-left:2em;padding-left:1em}div.csl-indent{margin-left:2em}pre,pre code{word-wrap:normal}code{overflow-wrap:break-word}.hasCopyButton{position:relative}.btn-copy-ex{position:absolute;right:5px;top:5px;visibility:hidden}.hasCopyButton:hover button.btn-copy-ex{visibility:visible}pre{padding:1rem 0.5rem}@media (max-width: 575.98px){div>div>pre{margin-left:calc(var(--bs-gutter-x) * -.5);margin-right:calc(var(--bs-gutter-x) * -.5);border-radius:0;padding-left:1rem;padding-right:1rem}.btn-copy-ex{right:calc(var(--bs-gutter-x) * -.5 + 5px)}}code a:any-link{color:inherit;text-decoration-color:#6c757d}pre code{padding:0;background:transparent}pre code .error,pre code .warning{font-weight:bolder}pre .img img,pre .r-plt img{margin:5px 0;background-color:#fff}@media print{code a:link:after,code a:visited:after{content:""}}a.sourceLine:hover{text-decoration:none}mark,.mark{background:linear-gradient(-100deg, rgba(13,202,240,0.2), rgba(13,202,240,0.7) 95%, rgba(13,202,240,0.1))}.algolia-autocomplete .aa-hint{color:#212529}.algolia-autocomplete .aa-dropdown-menu{width:Max(100%, 20rem);background-color:#fff;border:1px solid var(--bs-border-color);margin-top:2px;max-height:50vh;overflow-y:auto}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion{cursor:pointer;padding:5px 4px;border-bottom:1px #e9ecef solid;font-size:0.9rem;color:#212529}.search-details{font-size:0.9rem;color:#BF281B;display:inline;font-weight:bolder}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion.aa-cursor{background-color:#f9eae8}pre{background-color:#f1f3f5}pre code{color:#003B4F}pre code span.al{color:#AD0000}pre code span.an{color:#5E5E5E}pre code span.at{color:#657422}pre code span.bn{color:#AD0000}pre code span.cf{color:#003B4F}pre code span.ch{color:#20794D}pre code span.cn{color:#8f5902}pre code span.co{color:#5E5E5E}pre code span.cv{color:#5E5E5E;font-style:italic}pre code span.do{color:#5E5E5E;font-style:italic}pre code span.dt{color:#AD0000}pre code span.dv{color:#AD0000}pre code span.er{color:#AD0000}pre code span.fl{color:#AD0000}pre code span.fu{color:#4758AB}pre code span.im{color:#00769E}pre code span.in{color:#5E5E5E}pre code span.kw{color:#003B4F}pre code span.op{color:#5E5E5E}pre code span.ot{color:#003B4F}pre code span.pp{color:#AD0000}pre code span.sc{color:#5E5E5E}pre code span.ss{color:#20794D}pre code span.st{color:#20794D}pre code span.va{color:#111111}pre code span.vs{color:#20794D}pre code span.wa{color:#5E5E5E;font-style:italic}
diff --git a/docs/index.html b/docs/index.html
index 11c170b90..67fad32c8 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -17,7 +17,7 @@
-
+
Changelog • keras3 Changelog • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -71,9 +71,15 @@
keras3 (development version)
+
+
+
keras3 0.2.0 CRAN release: 2024-04-18
New functions:
-
quantize_weights()
: quantize model or layer weights in-place. Currently, only Dense
and EinsumDense
layers are supported (which is enough to cover the majority of transformers today)
+
New family of linear algebra ops
@@ -104,6 +112,13 @@ to_categorical(), op_one_hot()
, and fit()
can now accept R factors, offset them to be 0-based (reported in #1055
).
op_convert_to_numpy()
now returns unconverted NumPy arrays.
op_array()
and op_convert_to_tensor()
no longer error when casting R doubles to integer types.
+export_savedmodel()
now works with a Jax backend.
+Metric()$add_variable()
method gains arg: aggregration
.
+Layer()$add_weight()
method gains args: autocast
, regularizer
, aggregation
.
+op_bincount()
, op_multi_hot()
, op_one_hot()
, and layer_category_encoding()
now support sparse tensors.
+op_custom_gradient()
now supports the PyTorch backend
+layer_lstm()
and layer_gru()
gain arg use_cudnn
, default 'auto'
.
+Fixed an issue where application_preprocess_inputs()
would error if supplied an R array as input.
Doc improvements.
@@ -115,11 +130,11 @@
keras3 0.1.0
diff --git a/docs/pkgdown.js b/docs/pkgdown.js
index 5fccd9c0e..9bd6621ee 100644
--- a/docs/pkgdown.js
+++ b/docs/pkgdown.js
@@ -30,10 +30,10 @@
/* Clipboard --------------------------*/
function changeTooltipMessage(element, msg) {
- var tooltipOriginalTitle=element.getAttribute('data-original-title');
- element.setAttribute('data-original-title', msg);
+ var tooltipOriginalTitle=element.getAttribute('data-bs-original-title');
+ element.setAttribute('data-bs-original-title', msg);
$(element).tooltip('show');
- element.setAttribute('data-original-title', tooltipOriginalTitle);
+ element.setAttribute('data-bs-original-title', tooltipOriginalTitle);
}
if(ClipboardJS.isSupported()) {
@@ -60,7 +60,7 @@
e.clearSelection();
});
- clipboard.on('error', function() {
+ clipboard.on('error', function(e) {
changeTooltipMessage(e.trigger,'Press Ctrl+C or Command+C to copy');
});
diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml
index c96c49ca9..ef232a71d 100644
--- a/docs/pkgdown.yml
+++ b/docs/pkgdown.yml
@@ -1,5 +1,5 @@
pandoc: 3.1.11
-pkgdown: 2.0.8
+pkgdown: 2.0.9
pkgdown_sha: ~
articles:
autoencoder: examples/vision/autoencoder.html
@@ -25,7 +25,7 @@ articles:
understanding_masking_and_padding: understanding_masking_and_padding.html
writing_a_custom_training_loop_in_tensorflow: writing_a_custom_training_loop_in_tensorflow.html
writing_your_own_callbacks: writing_your_own_callbacks.html
-last_built: 2024-04-12T18:20Z
+last_built: 2024-04-23T17:39Z
urls:
reference: https://keras.posit.co/reference
article: https://keras.posit.co/articles
diff --git a/docs/reference/Callback.html b/docs/reference/Callback.html
index e4286ae1e..3181b8ec3 100644
--- a/docs/reference/Callback.html
+++ b/docs/reference/Callback.html
@@ -3,7 +3,7 @@
predict() in order to hook into the various stages of the model training,
evaluation, and inference lifecycle.
To create a custom callback, call Callback() and
-override the method associated with the stage of interest.">Define a custom Callback class — Callback • keras3 Define a custom Callback class — Callback • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -371,11 +371,11 @@
+
+
Value
@@ -219,11 +230,11 @@
See also
diff --git a/docs/reference/clone_model.html b/docs/reference/clone_model.html
index e6ed7e2cb..1e493fe61 100644
--- a/docs/reference/clone_model.html
+++ b/docs/reference/clone_model.html
@@ -1,7 +1,7 @@
Clone a model instance. — clone_model • keras3 Clone a model instance. — clone_model • keras3 Configure a model for training. — compile.keras.src.models.model.Model • keras3 Configure a model for training. — compile.keras.src.models.model.Model • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -240,11 +240,11 @@ See also
diff --git a/docs/reference/config_backend.html b/docs/reference/config_backend.html
index ef74bc9d8..ad437c84f 100644
--- a/docs/reference/config_backend.html
+++ b/docs/reference/config_backend.html
@@ -1,5 +1,5 @@
-Publicly accessible method for determining the current backend. — config_backend • keras3 Publicly accessible method for determining the current backend. — config_backend • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -105,11 +105,11 @@ See also
diff --git a/docs/reference/config_disable_interactive_logging.html b/docs/reference/config_disable_interactive_logging.html
index a945d6282..d75be00f8 100644
--- a/docs/reference/config_disable_interactive_logging.html
+++ b/docs/reference/config_disable_interactive_logging.html
@@ -1,7 +1,7 @@
Turn off interactive logging. — config_disable_interactive_logging • keras3 Turn off interactive logging. — config_disable_interactive_logging • keras3 Turn off traceback filtering. — config_disable_traceback_filtering • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -127,11 +127,11 @@ See also
diff --git a/docs/reference/config_dtype_policy.html b/docs/reference/config_dtype_policy.html
index 15c69e337..40b1bcf4f 100644
--- a/docs/reference/config_dtype_policy.html
+++ b/docs/reference/config_dtype_policy.html
@@ -1,5 +1,5 @@
-Returns the current default dtype policy object. — config_dtype_policy • keras3 Returns the current default dtype policy object. — config_dtype_policy • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -91,11 +91,11 @@ Value
diff --git a/docs/reference/config_enable_interactive_logging.html b/docs/reference/config_enable_interactive_logging.html
index 6c0d954a7..48f6ef2a8 100644
--- a/docs/reference/config_enable_interactive_logging.html
+++ b/docs/reference/config_enable_interactive_logging.html
@@ -1,7 +1,7 @@
Turn on interactive logging. — config_enable_interactive_logging • keras3 Turn on interactive logging. — config_enable_interactive_logging • keras3 Turn on traceback filtering. — config_enable_traceback_filtering • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -127,11 +127,11 @@ See also
diff --git a/docs/reference/config_enable_unsafe_deserialization.html b/docs/reference/config_enable_unsafe_deserialization.html
index c540d38a0..8c3d394c7 100644
--- a/docs/reference/config_enable_unsafe_deserialization.html
+++ b/docs/reference/config_enable_unsafe_deserialization.html
@@ -1,5 +1,5 @@
-Disables safe mode globally, allowing deserialization of lambdas. — config_enable_unsafe_deserialization • keras3 Disables safe mode globally, allowing deserialization of lambdas. — config_enable_unsafe_deserialization • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -95,11 +95,11 @@ See also
diff --git a/docs/reference/config_epsilon.html b/docs/reference/config_epsilon.html
index b7a29cba3..9263c7bdb 100644
--- a/docs/reference/config_epsilon.html
+++ b/docs/reference/config_epsilon.html
@@ -1,5 +1,5 @@
-Return the value of the fuzz factor used in numeric expressions. — config_epsilon • keras3 Return the value of the fuzz factor used in numeric expressions. — config_epsilon • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -105,11 +105,11 @@ See also
diff --git a/docs/reference/config_floatx.html b/docs/reference/config_floatx.html
index 3224557bc..03880b6fd 100644
--- a/docs/reference/config_floatx.html
+++ b/docs/reference/config_floatx.html
@@ -1,5 +1,5 @@
-Return the default float type, as a string. — config_floatx • keras3 Return the default float type, as a string. — config_floatx • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -105,11 +105,11 @@ See also
diff --git a/docs/reference/config_image_data_format.html b/docs/reference/config_image_data_format.html
index d752df8c1..892dc3d40 100644
--- a/docs/reference/config_image_data_format.html
+++ b/docs/reference/config_image_data_format.html
@@ -1,5 +1,5 @@
-Return the default image data format convention. — config_image_data_format • keras3 Return the default image data format convention. — config_image_data_format • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -105,11 +105,11 @@ See also
diff --git a/docs/reference/config_is_interactive_logging_enabled.html b/docs/reference/config_is_interactive_logging_enabled.html
index 96de934eb..d7a59a43b 100644
--- a/docs/reference/config_is_interactive_logging_enabled.html
+++ b/docs/reference/config_is_interactive_logging_enabled.html
@@ -1,7 +1,7 @@
Check if interactive logging is enabled. — config_is_interactive_logging_enabled • keras3 Check if interactive logging is enabled. — config_is_interactive_logging_enabled • keras3 Check if traceback filtering is enabled. — config_is_traceback_filtering_enabled • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -128,11 +128,11 @@ See also
diff --git a/docs/reference/config_set_backend.html b/docs/reference/config_set_backend.html
index ad295100d..aabb268fb 100644
--- a/docs/reference/config_set_backend.html
+++ b/docs/reference/config_set_backend.html
@@ -1,5 +1,5 @@
-Reload the backend (and the Keras package). — config_set_backend • keras3 Reload the backend (and the Keras package). — config_set_backend • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -118,11 +118,11 @@ See also
diff --git a/docs/reference/config_set_dtype_policy.html b/docs/reference/config_set_dtype_policy.html
index 88d274297..2a461db57 100644
--- a/docs/reference/config_set_dtype_policy.html
+++ b/docs/reference/config_set_dtype_policy.html
@@ -1,5 +1,5 @@
-Sets the default dtype policy globally. — config_set_dtype_policy • keras3 Sets the default dtype policy globally. — config_set_dtype_policy • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -101,11 +101,11 @@ Examples
diff --git a/docs/reference/config_set_epsilon.html b/docs/reference/config_set_epsilon.html
index 0ead448e1..8dd3d9bda 100644
--- a/docs/reference/config_set_epsilon.html
+++ b/docs/reference/config_set_epsilon.html
@@ -1,5 +1,5 @@
-Set the value of the fuzz factor used in numeric expressions. — config_set_epsilon • keras3 Set the value of the fuzz factor used in numeric expressions. — config_set_epsilon • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -117,11 +117,11 @@ See also
diff --git a/docs/reference/config_set_floatx.html b/docs/reference/config_set_floatx.html
index fa8abbb2d..ed3eef574 100644
--- a/docs/reference/config_set_floatx.html
+++ b/docs/reference/config_set_floatx.html
@@ -1,5 +1,5 @@
-Set the default float dtype. — config_set_floatx • keras3 Set the default float dtype. — config_set_floatx • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -129,11 +129,11 @@ See also
diff --git a/docs/reference/config_set_image_data_format.html b/docs/reference/config_set_image_data_format.html
index 56b724280..7b82c6652 100644
--- a/docs/reference/config_set_image_data_format.html
+++ b/docs/reference/config_set_image_data_format.html
@@ -1,5 +1,5 @@
-Set the value of the image data format convention. — config_set_image_data_format • keras3 Set the value of the image data format convention. — config_set_image_data_format • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -118,11 +118,11 @@ See also
diff --git a/docs/reference/constraint_maxnorm.html b/docs/reference/constraint_maxnorm.html
index c2d20f200..a8f79054a 100644
--- a/docs/reference/constraint_maxnorm.html
+++ b/docs/reference/constraint_maxnorm.html
@@ -1,6 +1,6 @@
MaxNorm weight constraint. — constraint_maxnorm • keras3 MaxNorm weight constraint. — constraint_maxnorm • keras3 MinMaxNorm weight constraint. — constraint_minmaxnorm • keras3 MinMaxNorm weight constraint. — constraint_minmaxnorm • keras3 Constrains the weights to be non-negative. — constraint_nonneg • keras3 Constrains the weights to be non-negative. — constraint_nonneg • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -98,11 +98,11 @@ See also
diff --git a/docs/reference/constraint_unitnorm.html b/docs/reference/constraint_unitnorm.html
index f55aac0b8..af514f3d7 100644
--- a/docs/reference/constraint_unitnorm.html
+++ b/docs/reference/constraint_unitnorm.html
@@ -1,5 +1,5 @@
-Constrains the weights incident to each hidden unit to have unit norm. — constraint_unitnorm • keras3 Constrains the weights incident to each hidden unit to have unit norm. — constraint_unitnorm • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -114,11 +114,11 @@ See also
diff --git a/docs/reference/count_params.html b/docs/reference/count_params.html
index 3f2cf6d08..c18dff8aa 100644
--- a/docs/reference/count_params.html
+++ b/docs/reference/count_params.html
@@ -1,5 +1,5 @@
-Count the total number of scalars composing the weights. — count_params • keras3 Count the total number of scalars composing the weights. — count_params • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -101,11 +101,11 @@ See also
diff --git a/docs/reference/custom_metric.html b/docs/reference/custom_metric.html
index 25fc13a44..f9b207ae0 100644
--- a/docs/reference/custom_metric.html
+++ b/docs/reference/custom_metric.html
@@ -1,5 +1,5 @@
-Custom metric function — custom_metric • keras3 Custom metric function — custom_metric • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -125,11 +125,11 @@ See also
diff --git a/docs/reference/dataset_boston_housing.html b/docs/reference/dataset_boston_housing.html
index 482c5bd27..17e3fa184 100644
--- a/docs/reference/dataset_boston_housing.html
+++ b/docs/reference/dataset_boston_housing.html
@@ -1,6 +1,6 @@
Boston housing price regression dataset — dataset_boston_housing • keras3 Boston housing price regression dataset — dataset_boston_housing • keras3 CIFAR10 small image classification — dataset_cifar10 • keras3 CIFAR10 small image classification — dataset_cifar10 • keras3 CIFAR100 small image classification — dataset_cifar100 • keras3 CIFAR100 small image classification — dataset_cifar100 • keras3 Fashion-MNIST database of fashion articles — dataset_fashion_mnist • keras3 Fashion-MNIST database of fashion articles — dataset_fashion_mnist • keras3 IMDB Movie reviews sentiment classification — dataset_imdb • keras3 Initializer that adapts its scale to the shape of its input tensors. — initializer_variance_scaling • keras3 Initializer that adapts its scale to the shape of its input tensors. — initializer_variance_scaling • keras3 Main Keras module — keras • keras3 Main Keras module — keras • keras3 keras3: R Interface to 'Keras' — keras3-package • keras3 keras3: R Interface to 'Keras' — keras3-package • keras3 Create a Keras tensor (Functional API input). — keras_input • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -170,11 +170,11 @@ See also
diff --git a/docs/reference/keras_model.html b/docs/reference/keras_model.html
index cd874ca4b..b799e316b 100644
--- a/docs/reference/keras_model.html
+++ b/docs/reference/keras_model.html
@@ -1,5 +1,5 @@
-Keras Model (Functional API) — keras_model • keras3 Keras Model (Functional API) — keras_model • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -131,11 +131,11 @@ See also
diff --git a/docs/reference/keras_model_sequential.html b/docs/reference/keras_model_sequential.html
index 34001e967..d168f8462 100644
--- a/docs/reference/keras_model_sequential.html
+++ b/docs/reference/keras_model_sequential.html
@@ -1,5 +1,5 @@
-Keras Model composed of a linear stack of layers — keras_model_sequential • keras3 Keras Model composed of a linear stack of layers — keras_model_sequential • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -211,11 +211,11 @@ See also
diff --git a/docs/reference/layer_activation.html b/docs/reference/layer_activation.html
index 674835fea..138508747 100644
--- a/docs/reference/layer_activation.html
+++ b/docs/reference/layer_activation.html
@@ -1,5 +1,5 @@
-Applies an activation function to an output. — layer_activation • keras3 Applies an activation function to an output. — layer_activation • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -134,11 +134,11 @@ See also
diff --git a/docs/reference/layer_activation_elu.html b/docs/reference/layer_activation_elu.html
index b2e11d293..ee1895f52 100644
--- a/docs/reference/layer_activation_elu.html
+++ b/docs/reference/layer_activation_elu.html
@@ -2,7 +2,7 @@
Applies an Exponential Linear Unit function to an output. — layer_activation_elu • keras3 Applies an Exponential Linear Unit function to an output. — layer_activation_elu • keras3 Leaky version of a Rectified Linear Unit activation layer. — layer_activation_leaky_relu • keras3 Leaky version of a Rectified Linear Unit activation layer. — layer_activation_leaky_relu • keras3 Parametric Rectified Linear Unit activation layer. — layer_activation_parametric_relu • keras3 Parametric Rectified Linear Unit activation layer. — layer_activation_parametric_relu • keras3 Rectified Linear Unit activation function layer. — layer_activation_relu • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -174,11 +174,11 @@ See also
diff --git a/docs/reference/layer_activation_softmax.html b/docs/reference/layer_activation_softmax.html
index 432d52760..c81a8af47 100644
--- a/docs/reference/layer_activation_softmax.html
+++ b/docs/reference/layer_activation_softmax.html
@@ -2,7 +2,7 @@
Softmax activation layer. — layer_activation_softmax • keras3 Softmax activation layer. — layer_activation_softmax • keras3 Layer that applies an update to the cost function based input activity. — layer_activity_regularization • keras3 Layer that applies an update to the cost function based input activity. — layer_activity_regularization • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -131,11 +131,11 @@ See also
diff --git a/docs/reference/layer_add.html b/docs/reference/layer_add.html
index a2ddc7309..6c1c292c0 100644
--- a/docs/reference/layer_add.html
+++ b/docs/reference/layer_add.html
@@ -1,6 +1,6 @@
Performs elementwise addition operation. — layer_add • keras3 Performs elementwise addition operation. — layer_add • keras3 Additive attention layer, a.k.a. Bahdanau-style attention. — layer_additive_attention • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -196,11 +196,11 @@ See also
diff --git a/docs/reference/layer_alpha_dropout.html b/docs/reference/layer_alpha_dropout.html
index e8743555d..af81ee54b 100644
--- a/docs/reference/layer_alpha_dropout.html
+++ b/docs/reference/layer_alpha_dropout.html
@@ -3,7 +3,7 @@
to their original values, in order to ensure the self-normalizing property
even after this dropout.
Alpha Dropout fits well to Scaled Exponential Linear Units (SELU) by
-randomly setting activations to the negative saturation value.">Applies Alpha Dropout to the input. — layer_alpha_dropout • keras3 Applies Alpha Dropout to the input. — layer_alpha_dropout • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -151,11 +151,11 @@ See also
diff --git a/docs/reference/layer_attention.html b/docs/reference/layer_attention.html
index 97dc1371f..60ed906f3 100644
--- a/docs/reference/layer_attention.html
+++ b/docs/reference/layer_attention.html
@@ -14,7 +14,7 @@
Use the softmax distribution to create a linear combination of value
with shape (batch_size, Tq, dim).
-">Dot-product attention layer, a.k.a. Luong-style attention. — layer_attention • keras3 Dot-product attention layer, a.k.a. Luong-style attention. — layer_attention • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -211,11 +211,11 @@ See also
diff --git a/docs/reference/layer_average.html b/docs/reference/layer_average.html
index 3f2f60090..b29fa3bbb 100644
--- a/docs/reference/layer_average.html
+++ b/docs/reference/layer_average.html
@@ -1,6 +1,6 @@
Averages a list of inputs element-wise.. — layer_average • keras3 Averages a list of inputs element-wise.. — layer_average • keras3 Average pooling for temporal data. — layer_average_pooling_1d • keras3 Average pooling operation for 2D spatial data. — layer_average_pooling_2d • keras3 Average pooling operation for 2D spatial data. — layer_average_pooling_2d • keras3 Layer that normalizes its inputs. — layer_batch_normalization • keras3 Layer that normalizes its inputs. — layer_batch_normalization • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -368,11 +368,11 @@ See also
diff --git a/docs/reference/layer_bidirectional.html b/docs/reference/layer_bidirectional.html
index 5f2dc8eab..0dfe72fc4 100644
--- a/docs/reference/layer_bidirectional.html
+++ b/docs/reference/layer_bidirectional.html
@@ -1,5 +1,5 @@
-Bidirectional wrapper for RNNs. — layer_bidirectional • keras3 Bidirectional wrapper for RNNs. — layer_bidirectional • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -206,11 +206,11 @@ See also
diff --git a/docs/reference/layer_category_encoding.html b/docs/reference/layer_category_encoding.html
index 0caa0a2ea..bc91666e5 100644
--- a/docs/reference/layer_category_encoding.html
+++ b/docs/reference/layer_category_encoding.html
@@ -5,7 +5,7 @@
inputs. For integer inputs where the total number of tokens is not known,
use layer_integer_lookup() instead.
Note: This layer is safe to use inside a tf.data pipeline
-(independently of which backend you're using).">A preprocessing layer which encodes integer features. — layer_category_encoding • keras3 A preprocessing layer which encodes integer features. — layer_category_encoding • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -220,11 +220,11 @@ See also
diff --git a/docs/reference/layer_center_crop.html b/docs/reference/layer_center_crop.html
index 870ef30e4..3def93fe3 100644
--- a/docs/reference/layer_center_crop.html
+++ b/docs/reference/layer_center_crop.html
@@ -3,7 +3,7 @@
image is smaller than the target size, it will be resized and cropped
so as to return the largest possible window in the image that matches
the target aspect ratio.
-Input pixel values can be of any range (e.g. [0., 1.) or [0, 255]).">A preprocessing layer which crops images. — layer_center_crop • keras3 A preprocessing layer which crops images. — layer_center_crop • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -162,11 +162,11 @@ See also
diff --git a/docs/reference/layer_concatenate.html b/docs/reference/layer_concatenate.html
index 08902584d..ada0ed85e 100644
--- a/docs/reference/layer_concatenate.html
+++ b/docs/reference/layer_concatenate.html
@@ -1,7 +1,7 @@
Concatenates a list of inputs. — layer_concatenate • keras3 Concatenates a list of inputs. — layer_concatenate • keras3 1D convolution layer (e.g. temporal convolution). — layer_conv_1d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -263,11 +263,11 @@ See also
diff --git a/docs/reference/layer_conv_1d_transpose.html b/docs/reference/layer_conv_1d_transpose.html
index b64e6228d..d820a4012 100644
--- a/docs/reference/layer_conv_1d_transpose.html
+++ b/docs/reference/layer_conv_1d_transpose.html
@@ -3,7 +3,7 @@
a transformation going in the opposite direction of a normal convolution,
i.e., from something that has the shape of the output of some convolution
to something that has the shape of its input while maintaining a
-connectivity pattern that is compatible with said convolution.">1D transposed convolution layer. — layer_conv_1d_transpose • keras3 1D transposed convolution layer. — layer_conv_1d_transpose • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -255,11 +255,11 @@ See also
diff --git a/docs/reference/layer_conv_2d.html b/docs/reference/layer_conv_2d.html
index 6babab812..fe542502f 100644
--- a/docs/reference/layer_conv_2d.html
+++ b/docs/reference/layer_conv_2d.html
@@ -3,7 +3,7 @@
input over a single spatial (or temporal) dimension to produce a tensor of
outputs. If use_bias is TRUE, a bias vector is created and added to the
outputs. Finally, if activation is not NULL, it is applied to the
-outputs as well.">2D convolution layer. — layer_conv_2d • keras3 2D convolution layer. — layer_conv_2d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -259,11 +259,11 @@ See also
diff --git a/docs/reference/layer_conv_2d_transpose.html b/docs/reference/layer_conv_2d_transpose.html
index f2a743188..83c95ff0c 100644
--- a/docs/reference/layer_conv_2d_transpose.html
+++ b/docs/reference/layer_conv_2d_transpose.html
@@ -3,7 +3,7 @@
a transformation going in the opposite direction of a normal convolution,
i.e., from something that has the shape of the output of some convolution
to something that has the shape of its input while maintaining a
-connectivity pattern that is compatible with said convolution.">2D transposed convolution layer. — layer_conv_2d_transpose • keras3 2D transposed convolution layer. — layer_conv_2d_transpose • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -258,11 +258,11 @@ See also
diff --git a/docs/reference/layer_conv_3d.html b/docs/reference/layer_conv_3d.html
index 9f64731b5..8cda974d3 100644
--- a/docs/reference/layer_conv_3d.html
+++ b/docs/reference/layer_conv_3d.html
@@ -3,7 +3,7 @@
input over a single spatial (or temporal) dimension to produce a tensor of
outputs. If use_bias is TRUE, a bias vector is created and added to the
outputs. Finally, if activation is not NULL, it is applied to the
-outputs as well.">3D convolution layer. — layer_conv_3d • keras3 3D convolution layer. — layer_conv_3d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -263,11 +263,11 @@ See also
diff --git a/docs/reference/layer_conv_3d_transpose.html b/docs/reference/layer_conv_3d_transpose.html
index 7ec72f874..2828f4fb8 100644
--- a/docs/reference/layer_conv_3d_transpose.html
+++ b/docs/reference/layer_conv_3d_transpose.html
@@ -3,7 +3,7 @@
a transformation going in the opposite direction of a normal convolution,
i.e., from something that has the shape of the output of some convolution
to something that has the shape of its input while maintaining a
-connectivity pattern that is compatible with said convolution.">3D transposed convolution layer. — layer_conv_3d_transpose • keras3 3D transposed convolution layer. — layer_conv_3d_transpose • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -260,11 +260,11 @@ See also
diff --git a/docs/reference/layer_conv_lstm_1d.html b/docs/reference/layer_conv_lstm_1d.html
index 732e35536..fe8fa96ca 100644
--- a/docs/reference/layer_conv_lstm_1d.html
+++ b/docs/reference/layer_conv_lstm_1d.html
@@ -1,6 +1,6 @@
1D Convolutional LSTM. — layer_conv_lstm_1d • keras3 1D Convolutional LSTM. — layer_conv_lstm_1d • keras3 2D Convolutional LSTM. — layer_conv_lstm_2d • keras3 2D Convolutional LSTM. — layer_conv_lstm_2d • keras3 3D Convolutional LSTM. — layer_conv_lstm_3d • keras3 3D Convolutional LSTM. — layer_conv_lstm_3d • keras3 Cropping layer for 1D input (e.g. temporal sequence). — layer_cropping_1d • keras3 Cropping layer for 1D input (e.g. temporal sequence). — layer_cropping_1d • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -152,11 +152,11 @@ See also
diff --git a/docs/reference/layer_cropping_2d.html b/docs/reference/layer_cropping_2d.html
index 5e7438cb6..039d3d46a 100644
--- a/docs/reference/layer_cropping_2d.html
+++ b/docs/reference/layer_cropping_2d.html
@@ -1,5 +1,5 @@
-Cropping layer for 2D input (e.g. picture). — layer_cropping_2d • keras3 Cropping layer for 2D input (e.g. picture). — layer_cropping_2d • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -164,11 +164,11 @@ See also
diff --git a/docs/reference/layer_cropping_3d.html b/docs/reference/layer_cropping_3d.html
index 18d74baf3..8cdb3abe4 100644
--- a/docs/reference/layer_cropping_3d.html
+++ b/docs/reference/layer_cropping_3d.html
@@ -1,5 +1,5 @@
-Cropping layer for 3D data (e.g. spatial or spatio-temporal). — layer_cropping_3d • keras3 Cropping layer for 3D data (e.g. spatial or spatio-temporal). — layer_cropping_3d • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -164,11 +164,11 @@ See also
diff --git a/docs/reference/layer_dense.html b/docs/reference/layer_dense.html
index 5b02277f9..731bd4f2f 100644
--- a/docs/reference/layer_dense.html
+++ b/docs/reference/layer_dense.html
@@ -4,7 +4,7 @@
where activation is the element-wise activation function
passed as the activation argument, kernel is a weights matrix
created by the layer, and bias is a bias vector created by the layer
-(only applicable if use_bias is TRUE).">Just your regular densely-connected NN layer. — layer_dense • keras3 Just your regular densely-connected NN layer. — layer_dense • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -237,11 +237,11 @@ See also
diff --git a/docs/reference/layer_depthwise_conv_1d.html b/docs/reference/layer_depthwise_conv_1d.html
index ac68e9d31..a306bd4d4 100644
--- a/docs/reference/layer_depthwise_conv_1d.html
+++ b/docs/reference/layer_depthwise_conv_1d.html
@@ -14,7 +14,7 @@
information across different input channels.
The depth_multiplier argument determines how many filters are applied to
one input channel. As such, it controls the amount of output channels that
-are generated per input channel in the depthwise step.">1D depthwise convolution layer. — layer_depthwise_conv_1d • keras3 1D depthwise convolution layer. — layer_depthwise_conv_1d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -285,11 +285,11 @@ See also
diff --git a/docs/reference/layer_depthwise_conv_2d.html b/docs/reference/layer_depthwise_conv_2d.html
index dea36bd76..efb640d72 100644
--- a/docs/reference/layer_depthwise_conv_2d.html
+++ b/docs/reference/layer_depthwise_conv_2d.html
@@ -14,7 +14,7 @@
information across different input channels.
The depth_multiplier argument determines how many filters are applied to
one input channel. As such, it controls the amount of output channels that
-are generated per input channel in the depthwise step.">2D depthwise convolution layer. — layer_depthwise_conv_2d • keras3 2D depthwise convolution layer. — layer_depthwise_conv_2d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -284,11 +284,11 @@ See also
diff --git a/docs/reference/layer_discretization.html b/docs/reference/layer_discretization.html
index 2bfb14856..7fa09fba2 100644
--- a/docs/reference/layer_discretization.html
+++ b/docs/reference/layer_discretization.html
@@ -3,7 +3,7 @@
contiguous ranges and output an integer index indicating which range each
element was placed in.
Note: This layer is safe to use inside a tf.data pipeline
-(independently of which backend you're using).">A preprocessing layer which buckets continuous features by ranges. — layer_discretization • keras3 A preprocessing layer which buckets continuous features by ranges. — layer_discretization • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -228,11 +228,11 @@ See also
diff --git a/docs/reference/layer_dot.html b/docs/reference/layer_dot.html
index 3732df72b..2f94edb35 100644
--- a/docs/reference/layer_dot.html
+++ b/docs/reference/layer_dot.html
@@ -7,7 +7,7 @@
of same size for both the inputs, and axes should correspond
to the dimensions that have the same size in the corresponding
inputs. e.g. with axes = c(1, 2), the dot product of x, and y
-will result in a tensor with shape (2, 5, 10)">Computes element-wise dot product of two tensors. — layer_dot • keras3 Computes element-wise dot product of two tensors. — layer_dot • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -170,11 +170,11 @@ See also
diff --git a/docs/reference/layer_dropout.html b/docs/reference/layer_dropout.html
index 9fbf33ccb..648cf1a1f 100644
--- a/docs/reference/layer_dropout.html
+++ b/docs/reference/layer_dropout.html
@@ -10,7 +10,7 @@
to TRUE when calling the layer.
(This is in contrast to setting trainable=FALSE for a Dropout layer.
trainable does not affect the layer's behavior, as Dropout does
-not have any variables/weights that can be frozen during training.)">Applies dropout to the input. — layer_dropout • keras3 Applies dropout to the input. — layer_dropout • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -170,11 +170,11 @@ See also
diff --git a/docs/reference/layer_einsum_dense.html b/docs/reference/layer_einsum_dense.html
index 7a32fd403..dbda94b99 100644
--- a/docs/reference/layer_einsum_dense.html
+++ b/docs/reference/layer_einsum_dense.html
@@ -1,5 +1,5 @@
-A layer that uses einsum as the backing computation. — layer_einsum_dense • keras3 A layer that uses einsum as the backing computation. — layer_einsum_dense • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -256,11 +256,11 @@ See also
diff --git a/docs/reference/layer_embedding.html b/docs/reference/layer_embedding.html
index 98292840a..1a2e9af7d 100644
--- a/docs/reference/layer_embedding.html
+++ b/docs/reference/layer_embedding.html
@@ -1,6 +1,6 @@
Turns positive integers (indexes) into dense vectors of fixed size. — layer_embedding • keras3 Turns positive integers (indexes) into dense vectors of fixed size. — layer_embedding • keras3 One-stop utility for preprocessing and encoding structured data. — layer_feature_space • keras3 A preprocessing layer which crosses features using the "hashing trick". — layer_hashed_crossing • keras3 A preprocessing layer which crosses features using the "hashing trick". — layer_hashed_crossing • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -211,11 +211,11 @@ See also
diff --git a/docs/reference/layer_hashing.html b/docs/reference/layer_hashing.html
index 02d403a25..18851839f 100644
--- a/docs/reference/layer_hashing.html
+++ b/docs/reference/layer_hashing.html
@@ -71,7 +71,7 @@
## [1]
## [0]], shape=(5, 1), dtype=int64)
-">A preprocessing layer which hashes and bins categorical features. — layer_hashing • keras3 A preprocessing layer which hashes and bins categorical features. — layer_hashing • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -397,11 +397,11 @@ See also
diff --git a/docs/reference/layer_identity.html b/docs/reference/layer_identity.html
index 46789e62e..edb2fa5d4 100644
--- a/docs/reference/layer_identity.html
+++ b/docs/reference/layer_identity.html
@@ -1,6 +1,6 @@
Identity layer. — layer_identity • keras3 Identity layer. — layer_identity • keras3 keras_input — layer_input • keras3 keras_input — layer_input • keras3 A preprocessing layer that maps integers to (possibly encoded) indices. — layer_integer_lookup • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -505,11 +505,11 @@ See also
diff --git a/docs/reference/layer_jax_model_wrapper.html b/docs/reference/layer_jax_model_wrapper.html
index 2eabe6fdd..c67ac0441 100644
--- a/docs/reference/layer_jax_model_wrapper.html
+++ b/docs/reference/layer_jax_model_wrapper.html
@@ -1,6 +1,6 @@
Keras Layer that wraps a JAX model. — layer_jax_model_wrapper • keras3 Keras Layer that wraps a JAX model. — layer_jax_model_wrapper • keras3 Wraps arbitrary expressions as a Layer object. — layer_lambda • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -169,11 +169,11 @@ See also
diff --git a/docs/reference/layer_layer_normalization.html b/docs/reference/layer_layer_normalization.html
index 856f3998c..596734dce 100644
--- a/docs/reference/layer_layer_normalization.html
+++ b/docs/reference/layer_layer_normalization.html
@@ -46,7 +46,7 @@
corresponds to a layer_layer_normalization() that normalizes across height, width,
and channel and has gamma and beta span only the channel dimension.
So, this layer_layer_normalization() implementation will not match a
-layer_group_normalization() layer with group size set to 1.">Layer normalization layer (Ba et al., 2016). — layer_layer_normalization • keras3 Layer normalization layer (Ba et al., 2016). — layer_layer_normalization • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -327,11 +327,11 @@ See also
diff --git a/docs/reference/layer_lstm.html b/docs/reference/layer_lstm.html
index 9005c8a24..6dd2fe082 100644
--- a/docs/reference/layer_lstm.html
+++ b/docs/reference/layer_lstm.html
@@ -39,7 +39,7 @@
## shape(32, 4)
-">Long Short-Term Memory layer - Hochreiter 1997. — layer_lstm • keras3 Long Short-Term Memory layer - Hochreiter 1997. — layer_lstm • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -400,11 +400,11 @@ See also
diff --git a/docs/reference/layer_masking.html b/docs/reference/layer_masking.html
index 140606a0c..d314fe887 100644
--- a/docs/reference/layer_masking.html
+++ b/docs/reference/layer_masking.html
@@ -4,7 +4,7 @@
are equal to mask_value, then the timestep will be masked (skipped)
in all downstream layers (as long as they support masking).
If any downstream layer does not support masking yet receives such
-an input mask, an exception will be raised.">Masks a sequence by using a mask value to skip timesteps. — layer_masking • keras3 Masks a sequence by using a mask value to skip timesteps. — layer_masking • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -156,11 +156,11 @@ See also
diff --git a/docs/reference/layer_max_pooling_1d.html b/docs/reference/layer_max_pooling_1d.html
index 75924d7d0..83096ffad 100644
--- a/docs/reference/layer_max_pooling_1d.html
+++ b/docs/reference/layer_max_pooling_1d.html
@@ -4,7 +4,7 @@
The resulting output when using the "valid" padding option has a shape of:
output_shape = (input_shape - pool_size + 1) / strides).
The resulting output shape when using the "same" padding option is:
-output_shape = input_shape / strides'>Max pooling operation for 1D temporal data. — layer_max_pooling_1d • keras3 Max pooling operation for 1D temporal data. — layer_max_pooling_1d • keras3 Max pooling operation for 2D spatial data. — layer_max_pooling_2d • keras3 Max pooling operation for 2D spatial data. — layer_max_pooling_2d • keras3 Multi Head Attention layer. — layer_multi_head_attention • keras3 Multi Head Attention layer. — layer_multi_head_attention • keras3 A preprocessing layer that normalizes continuous features. — layer_normalization • keras3 A preprocessing layer that normalizes continuous features. — layer_normalization • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -219,11 +219,11 @@ See also
diff --git a/docs/reference/layer_permute.html b/docs/reference/layer_permute.html
index 5ab519439..a231957e6 100644
--- a/docs/reference/layer_permute.html
+++ b/docs/reference/layer_permute.html
@@ -1,5 +1,5 @@
-Permutes the dimensions of the input according to a given pattern. — layer_permute • keras3 Permutes the dimensions of the input according to a given pattern. — layer_permute • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -137,11 +137,11 @@ See also
diff --git a/docs/reference/layer_random_brightness.html b/docs/reference/layer_random_brightness.html
index 36f82d36b..35c192b0f 100644
--- a/docs/reference/layer_random_brightness.html
+++ b/docs/reference/layer_random_brightness.html
@@ -3,7 +3,7 @@
images. At inference time, the output will be identical to the input.
Call the layer with training=TRUE to adjust the brightness of the input.
Note: This layer is safe to use inside a tf.data pipeline
-(independently of which backend you're using).">A preprocessing layer which randomly adjusts brightness during training. — layer_random_brightness • keras3 A preprocessing layer which randomly adjusts brightness during training. — layer_random_brightness • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -189,11 +189,11 @@ See also
diff --git a/docs/reference/layer_random_contrast.html b/docs/reference/layer_random_contrast.html
index 964eecaa6..ca0f1e5d8 100644
--- a/docs/reference/layer_random_contrast.html
+++ b/docs/reference/layer_random_contrast.html
@@ -9,7 +9,7 @@
in integer or floating point dtype.
By default, the layer will output floats.
Note: This layer is safe to use inside a tf.data pipeline
-(independently of which backend you're using).">A preprocessing layer which randomly adjusts contrast during training. — layer_random_contrast • keras3 A preprocessing layer which randomly adjusts contrast during training. — layer_random_contrast • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -168,11 +168,11 @@ See also
diff --git a/docs/reference/layer_random_crop.html b/docs/reference/layer_random_crop.html
index cfb3a3e13..5b5a47bc2 100644
--- a/docs/reference/layer_random_crop.html
+++ b/docs/reference/layer_random_crop.html
@@ -11,7 +11,7 @@
of integer or floating point dtype. By default, the layer will output
floats.
Note: This layer is safe to use inside a tf.data pipeline
-(independently of which backend you're using).">A preprocessing layer which randomly crops images during training. — layer_random_crop • keras3 A preprocessing layer which randomly crops images during training. — layer_random_crop • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -189,11 +189,11 @@ See also
diff --git a/docs/reference/layer_random_flip.html b/docs/reference/layer_random_flip.html
index b865175b4..96bef4388 100644
--- a/docs/reference/layer_random_flip.html
+++ b/docs/reference/layer_random_flip.html
@@ -6,7 +6,7 @@
of integer or floating point dtype.
By default, the layer will output floats.
Note: This layer is safe to use inside a tf.data pipeline
-(independently of which backend you're using).">A preprocessing layer which randomly flips images during training. — layer_random_flip • keras3 A preprocessing layer which randomly flips images during training. — layer_random_flip • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -157,11 +157,11 @@ See also
diff --git a/docs/reference/layer_random_rotation.html b/docs/reference/layer_random_rotation.html
index 539d6f008..3b0ae8895 100644
--- a/docs/reference/layer_random_rotation.html
+++ b/docs/reference/layer_random_rotation.html
@@ -8,7 +8,7 @@
of integer or floating point dtype.
By default, the layer will output floats.
Note: This layer is safe to use inside a tf.data pipeline
-(independently of which backend you're using).">A preprocessing layer which randomly rotates images during training. — layer_random_rotation • keras3 A preprocessing layer which randomly rotates images during training. — layer_random_rotation • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -216,11 +216,11 @@ See also
diff --git a/docs/reference/layer_random_translation.html b/docs/reference/layer_random_translation.html
index fe01a07f4..d4f1e07cf 100644
--- a/docs/reference/layer_random_translation.html
+++ b/docs/reference/layer_random_translation.html
@@ -3,7 +3,7 @@
filling empty space according to fill_mode.
Input pixel values can be of any range (e.g. [0., 1.) or [0, 255]) and
of integer or floating point dtype. By default, the layer will output
-floats.">A preprocessing layer which randomly translates images during training. — layer_random_translation • keras3 A preprocessing layer which randomly translates images during training. — layer_random_translation • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -220,11 +220,11 @@ See also
diff --git a/docs/reference/layer_random_zoom.html b/docs/reference/layer_random_zoom.html
index d2278b919..8bc0b4470 100644
--- a/docs/reference/layer_random_zoom.html
+++ b/docs/reference/layer_random_zoom.html
@@ -3,7 +3,7 @@
independently, filling empty space according to fill_mode.
Input pixel values can be of any range (e.g. [0., 1.) or [0, 255]) and
of integer or floating point dtype.
-By default, the layer will output floats.">A preprocessing layer which randomly zooms images during training. — layer_random_zoom • keras3 A preprocessing layer which randomly zooms images during training. — layer_random_zoom • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -161,7 +161,7 @@ Arguments.
@@ -226,11 +226,11 @@ See also
diff --git a/docs/reference/layer_repeat_vector.html b/docs/reference/layer_repeat_vector.html
index 383f9c0f7..a15d252e7 100644
--- a/docs/reference/layer_repeat_vector.html
+++ b/docs/reference/layer_repeat_vector.html
@@ -1,5 +1,5 @@
-Repeats the input n times. — layer_repeat_vector • keras3 Repeats the input n times. — layer_repeat_vector • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -133,11 +133,11 @@ See also
diff --git a/docs/reference/layer_rescaling.html b/docs/reference/layer_rescaling.html
index 4cabe54dd..22d1cf7cf 100644
--- a/docs/reference/layer_rescaling.html
+++ b/docs/reference/layer_rescaling.html
@@ -12,7 +12,7 @@
of integer or floating point dtype, and by default the layer will output
floats.
Note: This layer is safe to use inside a tf.data pipeline
-(independently of which backend you're using).">A preprocessing layer which rescales input values to a new range. — layer_rescaling • keras3 A preprocessing layer which rescales input values to a new range. — layer_rescaling • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -158,11 +158,11 @@ See also
diff --git a/docs/reference/layer_reshape.html b/docs/reference/layer_reshape.html
index 58e75f27a..366840d63 100644
--- a/docs/reference/layer_reshape.html
+++ b/docs/reference/layer_reshape.html
@@ -1,5 +1,5 @@
-Layer that reshapes inputs into the given shape. — layer_reshape • keras3 Layer that reshapes inputs into the given shape. — layer_reshape • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -142,11 +142,11 @@ See also
diff --git a/docs/reference/layer_resizing.html b/docs/reference/layer_resizing.html
index 0c3c2aea6..1533336df 100644
--- a/docs/reference/layer_resizing.html
+++ b/docs/reference/layer_resizing.html
@@ -2,7 +2,7 @@
A preprocessing layer which resizes images. — layer_resizing • keras3 A preprocessing layer which resizes images. — layer_resizing • keras3 Base class for recurrent layers — layer_rnn • keras3 Base class for recurrent layers — layer_rnn • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -293,11 +293,11 @@ See also
diff --git a/docs/reference/layer_separable_conv_1d.html b/docs/reference/layer_separable_conv_1d.html
index 182cef031..44f03e17f 100644
--- a/docs/reference/layer_separable_conv_1d.html
+++ b/docs/reference/layer_separable_conv_1d.html
@@ -3,7 +3,7 @@
channels, followed by a pointwise convolution that mixes channels.
If use_bias is TRUE and a bias initializer is provided,
it adds a bias vector to the output. It then optionally applies an
-activation function to produce the final output.">1D separable convolution layer. — layer_separable_conv_1d • keras3 1D separable convolution layer. — layer_separable_conv_1d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -274,11 +274,11 @@ See also
diff --git a/docs/reference/layer_separable_conv_2d.html b/docs/reference/layer_separable_conv_2d.html
index ff9c87241..a50d7cf75 100644
--- a/docs/reference/layer_separable_conv_2d.html
+++ b/docs/reference/layer_separable_conv_2d.html
@@ -3,7 +3,7 @@
channels, followed by a pointwise convolution that mixes channels.
If use_bias is TRUE and a bias initializer is provided,
it adds a bias vector to the output. It then optionally applies an
-activation function to produce the final output.">2D separable convolution layer. — layer_separable_conv_2d • keras3 2D separable convolution layer. — layer_separable_conv_2d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -275,11 +275,11 @@ See also
diff --git a/docs/reference/layer_simple_rnn.html b/docs/reference/layer_simple_rnn.html
index b5dab07fb..80a1d7480 100644
--- a/docs/reference/layer_simple_rnn.html
+++ b/docs/reference/layer_simple_rnn.html
@@ -1,5 +1,5 @@
-Fully-connected RNN where the output is to be fed back as the new input. — layer_simple_rnn • keras3 Fully-connected RNN where the output is to be fed back as the new input. — layer_simple_rnn • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -280,11 +280,11 @@ See also
diff --git a/docs/reference/layer_spatial_dropout_1d.html b/docs/reference/layer_spatial_dropout_1d.html
index 25c5e4d02..483895b23 100644
--- a/docs/reference/layer_spatial_dropout_1d.html
+++ b/docs/reference/layer_spatial_dropout_1d.html
@@ -5,7 +5,7 @@
early convolution layers) then regular dropout will not regularize the
activations and will otherwise just result in an effective learning rate
decrease. In this case, SpatialDropout1D will help promote independence
-between feature maps and should be used instead.">Spatial 1D version of Dropout. — layer_spatial_dropout_1d • keras3 Spatial 1D version of Dropout. — layer_spatial_dropout_1d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -165,11 +165,11 @@ See also
diff --git a/docs/reference/layer_spatial_dropout_2d.html b/docs/reference/layer_spatial_dropout_2d.html
index c281259cf..afa4a2d15 100644
--- a/docs/reference/layer_spatial_dropout_2d.html
+++ b/docs/reference/layer_spatial_dropout_2d.html
@@ -5,7 +5,7 @@
early convolution layers) then regular dropout will not regularize the
activations and will otherwise just result in an effective learning rate
decrease. In this case, SpatialDropout2D will help promote independence
-between feature maps and should be used instead.">Spatial 2D version of Dropout. — layer_spatial_dropout_2d • keras3 Spatial 2D version of Dropout. — layer_spatial_dropout_2d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -184,11 +184,11 @@ See also
diff --git a/docs/reference/layer_spatial_dropout_3d.html b/docs/reference/layer_spatial_dropout_3d.html
index db0e83bd3..29eb7274b 100644
--- a/docs/reference/layer_spatial_dropout_3d.html
+++ b/docs/reference/layer_spatial_dropout_3d.html
@@ -5,7 +5,7 @@
early convolution layers) then regular dropout will not regularize the
activations and will otherwise just result in an effective learning rate
decrease. In this case, SpatialDropout3D will help promote independence
-between feature maps and should be used instead.">Spatial 3D version of Dropout. — layer_spatial_dropout_3d • keras3 Spatial 3D version of Dropout. — layer_spatial_dropout_3d • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -184,11 +184,11 @@ See also
diff --git a/docs/reference/layer_spectral_normalization.html b/docs/reference/layer_spectral_normalization.html
index cda4bb28d..18bf62557 100644
--- a/docs/reference/layer_spectral_normalization.html
+++ b/docs/reference/layer_spectral_normalization.html
@@ -1,6 +1,6 @@
Performs spectral normalization on the weights of a target layer. — layer_spectral_normalization • keras3 Performs spectral normalization on the weights of a target layer. — layer_spectral_normalization • keras3 A preprocessing layer that maps strings to (possibly encoded) indices. — layer_string_lookup • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -489,11 +489,11 @@ See also
diff --git a/docs/reference/layer_subtract.html b/docs/reference/layer_subtract.html
index 88a0d254c..bdd00090a 100644
--- a/docs/reference/layer_subtract.html
+++ b/docs/reference/layer_subtract.html
@@ -1,7 +1,7 @@
Performs elementwise subtraction. — layer_subtract • keras3 Performs elementwise subtraction. — layer_subtract • keras3 A preprocessing layer which maps text features to integer sequences. — layer_text_vectorization • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -444,11 +444,11 @@ See also
diff --git a/docs/reference/layer_tfsm.html b/docs/reference/layer_tfsm.html
index 57c13c492..92c3d727c 100644
--- a/docs/reference/layer_tfsm.html
+++ b/docs/reference/layer_tfsm.html
@@ -1,5 +1,5 @@
-Reload a Keras model/layer that was saved via export_savedmodel(). — layer_tfsm • keras3 Reload a Keras model/layer that was saved via export_savedmodel(). — layer_tfsm • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -143,8 +143,8 @@ Examples## Output Type:
## TensorSpec(shape=(None, 10), dtype=tf.float32, name=None)
## Captures:
-## 129813643620448: TensorSpec(shape=(), dtype=tf.resource, name=None)
-## 129813643612000: TensorSpec(shape=(), dtype=tf.resource, name=None)
+## 133110437052480: TensorSpec(shape=(), dtype=tf.resource, name=None)
+## 133110437056176: TensorSpec(shape=(), dtype=tf.resource, name=None)
reloaded_layer <- layer_tfsm ( filepath = "path/to/artifact" )
input <- random_normal ( c ( 2 , 784 ) )
@@ -177,11 +177,11 @@ See also
diff --git a/docs/reference/layer_time_distributed.html b/docs/reference/layer_time_distributed.html
index 9877152e4..c53f56d92 100644
--- a/docs/reference/layer_time_distributed.html
+++ b/docs/reference/layer_time_distributed.html
@@ -15,7 +15,7 @@
Because layer_time_distributed applies the same instance of layer_conv2d to each of
-the timestamps, the same set of weights are used at each timestamp.">This wrapper allows to apply a layer to every temporal slice of an input. — layer_time_distributed • keras3 This wrapper allows to apply a layer to every temporal slice of an input. — layer_time_distributed • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -175,11 +175,11 @@ See also
diff --git a/docs/reference/layer_torch_module_wrapper.html b/docs/reference/layer_torch_module_wrapper.html
index d19915be2..cb17e29b1 100644
--- a/docs/reference/layer_torch_module_wrapper.html
+++ b/docs/reference/layer_torch_module_wrapper.html
@@ -1,7 +1,7 @@
Torch module wrapper layer. — layer_torch_module_wrapper • keras3 Torch module wrapper layer. — layer_torch_module_wrapper • keras3 Unit normalization layer. — layer_unit_normalization • keras3 Unit normalization layer. — layer_unit_normalization • keras3 Upsampling layer for 1D inputs. — layer_upsampling_1d • keras3 Upsampling layer for 1D inputs. — layer_upsampling_1d • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -151,11 +151,11 @@ See also
diff --git a/docs/reference/layer_upsampling_2d.html b/docs/reference/layer_upsampling_2d.html
index 2876d560c..50895b204 100644
--- a/docs/reference/layer_upsampling_2d.html
+++ b/docs/reference/layer_upsampling_2d.html
@@ -1,7 +1,7 @@
Upsampling layer for 2D inputs. — layer_upsampling_2d • keras3 Upsampling layer for 2D inputs. — layer_upsampling_2d • keras3 Upsampling layer for 3D inputs. — layer_upsampling_3d • keras3 Upsampling layer for 3D inputs. — layer_upsampling_3d • keras3 Zero-padding layer for 1D input (e.g. temporal sequence). — layer_zero_padding_1d • keras3 Zero-padding layer for 1D input (e.g. temporal sequence). — layer_zero_padding_1d • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -159,11 +159,11 @@ See also
diff --git a/docs/reference/layer_zero_padding_2d.html b/docs/reference/layer_zero_padding_2d.html
index a1c904d1c..0395f6bca 100644
--- a/docs/reference/layer_zero_padding_2d.html
+++ b/docs/reference/layer_zero_padding_2d.html
@@ -1,6 +1,6 @@
Zero-padding layer for 2D input (e.g. picture). — layer_zero_padding_2d • keras3 Zero-padding layer for 2D input (e.g. picture). — layer_zero_padding_2d • keras3 Zero-padding layer for 3D data (spatial or spatio-temporal). — layer_zero_padding_3d • keras3 Zero-padding layer for 3D data (spatial or spatio-temporal). — layer_zero_padding_3d • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -172,11 +172,11 @@ See also
diff --git a/docs/reference/learning_rate_schedule_cosine_decay.html b/docs/reference/learning_rate_schedule_cosine_decay.html
index 1b8cc24ae..06bb874fb 100644
--- a/docs/reference/learning_rate_schedule_cosine_decay.html
+++ b/docs/reference/learning_rate_schedule_cosine_decay.html
@@ -57,7 +57,7 @@
You can pass this schedule directly into a optimizer
as the learning rate. The learning rate schedule is also serializable and
deserializable using keras$optimizers$schedules$serialize and
-keras$optimizers$schedules$deserialize.">A LearningRateSchedule that uses a cosine decay with optional warmup. — learning_rate_schedule_cosine_decay • keras3 A LearningRateSchedule that uses a cosine decay with optional warmup. — learning_rate_schedule_cosine_decay • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -308,11 +308,11 @@ See also
diff --git a/docs/reference/learning_rate_schedule_cosine_decay_restarts.html b/docs/reference/learning_rate_schedule_cosine_decay_restarts.html
index db205100b..2885eb1f7 100644
--- a/docs/reference/learning_rate_schedule_cosine_decay_restarts.html
+++ b/docs/reference/learning_rate_schedule_cosine_decay_restarts.html
@@ -12,7 +12,7 @@
The learning rate multiplier first decays
from 1 to alpha for first_decay_steps steps. Then, a warm
restart is performed. Each new warm restart runs for t_mul times more
-steps and with m_mul times initial learning rate as the new learning rate.">A LearningRateSchedule that uses a cosine decay schedule with restarts. — learning_rate_schedule_cosine_decay_restarts • keras3 A LearningRateSchedule that uses a cosine decay schedule with restarts. — learning_rate_schedule_cosine_decay_restarts • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -186,11 +186,11 @@ See also
diff --git a/docs/reference/learning_rate_schedule_exponential_decay.html b/docs/reference/learning_rate_schedule_exponential_decay.html
index 2f1fd6779..557e8c76e 100644
--- a/docs/reference/learning_rate_schedule_exponential_decay.html
+++ b/docs/reference/learning_rate_schedule_exponential_decay.html
@@ -14,7 +14,7 @@
an integer division and the decayed learning rate follows a
staircase function.
You can pass this schedule directly into a optimizer
-as the learning rate.">A LearningRateSchedule that uses an exponential decay schedule. — learning_rate_schedule_exponential_decay • keras3 A LearningRateSchedule that uses an exponential decay schedule. — learning_rate_schedule_exponential_decay • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -195,11 +195,11 @@ See also
diff --git a/docs/reference/learning_rate_schedule_inverse_time_decay.html b/docs/reference/learning_rate_schedule_inverse_time_decay.html
index 4d34e68a2..72a6e448b 100644
--- a/docs/reference/learning_rate_schedule_inverse_time_decay.html
+++ b/docs/reference/learning_rate_schedule_inverse_time_decay.html
@@ -19,7 +19,7 @@
}
You can pass this schedule directly into a optimizer_*
-as the learning rate.">A LearningRateSchedule that uses an inverse time decay schedule. — learning_rate_schedule_inverse_time_decay • keras3 A LearningRateSchedule that uses an inverse time decay schedule. — learning_rate_schedule_inverse_time_decay • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -206,11 +206,11 @@ See also
diff --git a/docs/reference/learning_rate_schedule_piecewise_constant_decay.html b/docs/reference/learning_rate_schedule_piecewise_constant_decay.html
index fb027c3d4..742015d9b 100644
--- a/docs/reference/learning_rate_schedule_piecewise_constant_decay.html
+++ b/docs/reference/learning_rate_schedule_piecewise_constant_decay.html
@@ -1,7 +1,7 @@
A LearningRateSchedule that uses a piecewise constant decay schedule. — learning_rate_schedule_piecewise_constant_decay • keras3 A LearningRateSchedule that uses a piecewise constant decay schedule. — learning_rate_schedule_piecewise_constant_decay • keras3 A LearningRateSchedule that uses a polynomial decay schedule. — learning_rate_schedule_polynomial_decay • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -245,11 +245,11 @@ See also
diff --git a/docs/reference/load_model.html b/docs/reference/load_model.html
index 410d6842d..778a30436 100644
--- a/docs/reference/load_model.html
+++ b/docs/reference/load_model.html
@@ -1,5 +1,5 @@
-Loads a model saved via save_model(). — load_model • keras3 Loads a model saved via save_model(). — load_model • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -141,11 +141,11 @@ See also
diff --git a/docs/reference/load_model_weights.html b/docs/reference/load_model_weights.html
index b266d584d..bcbf46985 100644
--- a/docs/reference/load_model_weights.html
+++ b/docs/reference/load_model_weights.html
@@ -10,7 +10,7 @@
you can choose to ignore errors and continue loading
by setting skip_mismatch=TRUE. In this case any layer with
mismatching weights will be skipped. A warning will be displayed
-for each skipped layer.">Load weights from a file saved via save_model_weights(). — load_model_weights • keras3 Load weights from a file saved via save_model_weights(). — load_model_weights • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -153,11 +153,11 @@ See also
diff --git a/docs/reference/loss_binary_crossentropy.html b/docs/reference/loss_binary_crossentropy.html
index 86e178437..572ad3ae6 100644
--- a/docs/reference/loss_binary_crossentropy.html
+++ b/docs/reference/loss_binary_crossentropy.html
@@ -8,7 +8,7 @@
when from_logits=TRUE) or a probability (i.e, value in [0., 1.] when
from_logits=FALSE).
-">Computes the cross-entropy loss between true labels and predicted labels. — loss_binary_crossentropy • keras3 Computes the cross-entropy loss between true labels and predicted labels. — loss_binary_crossentropy • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -219,7 +219,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_huber ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -227,11 +227,11 @@ See also
diff --git a/docs/reference/loss_binary_focal_crossentropy.html b/docs/reference/loss_binary_focal_crossentropy.html
index ac0ff95fc..6330b86b9 100644
--- a/docs/reference/loss_binary_focal_crossentropy.html
+++ b/docs/reference/loss_binary_focal_crossentropy.html
@@ -27,7 +27,7 @@
focal_factor = (1 - output) ** gamma for class 1
focal_factor = output ** gamma for class 0
where gamma is a focusing parameter. When gamma=0, this function is
-equivalent to the binary crossentropy loss.">Computes focal cross-entropy loss between true labels and predictions. — loss_binary_focal_crossentropy • keras3 Computes focal cross-entropy loss between true labels and predictions. — loss_binary_focal_crossentropy • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -325,7 +325,7 @@ Examples
On this page
@@ -333,11 +333,11 @@ See also
diff --git a/docs/reference/loss_categorical_crossentropy.html b/docs/reference/loss_categorical_crossentropy.html
index 72ebff5ad..fb1309011 100644
--- a/docs/reference/loss_categorical_crossentropy.html
+++ b/docs/reference/loss_categorical_crossentropy.html
@@ -4,7 +4,7 @@
you want to provide labels as integers, please use
SparseCategoricalCrossentropy loss. There should be num_classes floating
point values per feature, i.e., the shape of both y_pred and y_true are
-[batch_size, num_classes].">Computes the crossentropy loss between the labels and predictions. — loss_categorical_crossentropy • keras3 Computes the crossentropy loss between the labels and predictions. — loss_categorical_crossentropy • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -188,7 +188,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_huber ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -196,11 +196,11 @@ See also
diff --git a/docs/reference/loss_categorical_focal_crossentropy.html b/docs/reference/loss_categorical_focal_crossentropy.html
index bd7e38de2..5c39c69c5 100644
--- a/docs/reference/loss_categorical_focal_crossentropy.html
+++ b/docs/reference/loss_categorical_focal_crossentropy.html
@@ -27,7 +27,7 @@
FL(p_t) = alpha * (1 - p_t) ** gamma * CategoricalCE(y_true, y_pred)
In the snippet below, there is num_classes floating pointing values per
example. The shape of both y_pred and y_true are
-(batch_size, num_classes).">Computes the alpha balanced focal crossentropy loss. — loss_categorical_focal_crossentropy • keras3 Computes the alpha balanced focal crossentropy loss. — loss_categorical_focal_crossentropy • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -273,7 +273,7 @@ Examples
On this page
@@ -281,11 +281,11 @@ See also
diff --git a/docs/reference/loss_categorical_hinge.html b/docs/reference/loss_categorical_hinge.html
index 3c5e4f430..6b1fce0a3 100644
--- a/docs/reference/loss_categorical_hinge.html
+++ b/docs/reference/loss_categorical_hinge.html
@@ -2,7 +2,7 @@
Computes the categorical hinge loss between y_true & y_pred. — loss_categorical_hinge • keras3 Computes the categorical hinge loss between y_true & y_pred. — loss_categorical_hinge • keras3 Computes the cosine similarity between y_true & y_pred. — loss_cosine_similarity • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -160,7 +160,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_huber ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -168,11 +168,11 @@ See also
diff --git a/docs/reference/loss_ctc.html b/docs/reference/loss_ctc.html
index 2f0493f6f..4b8fd9457 100644
--- a/docs/reference/loss_ctc.html
+++ b/docs/reference/loss_ctc.html
@@ -1,5 +1,5 @@
-CTC (Connectionist Temporal Classification) loss. — loss_ctc • keras3 CTC (Connectionist Temporal Classification) loss. — loss_ctc • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -119,17 +119,21 @@ Value CTC loss value.
+
diff --git a/docs/reference/loss_dice.html b/docs/reference/loss_dice.html
index 6d0b85484..cbe79c52d 100644
--- a/docs/reference/loss_dice.html
+++ b/docs/reference/loss_dice.html
@@ -4,7 +4,7 @@
Formula:
loss = 1 - (2 * sum(y_true * y_pred)) / (sum(y_true) + sum(y_pred))
-">Computes the Dice loss value between y_true and y_pred. — loss_dice • keras3 Computes the Dice loss value between y_true and y_pred. — loss_dice • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -131,7 +131,7 @@ Value
On this page
@@ -139,11 +139,11 @@ See also
diff --git a/docs/reference/loss_hinge.html b/docs/reference/loss_hinge.html
index aaa7def7d..9889719ce 100644
--- a/docs/reference/loss_hinge.html
+++ b/docs/reference/loss_hinge.html
@@ -3,7 +3,7 @@
loss <- mean(maximum(1 - y_true * y_pred, 0), axis=-1)
y_true values are expected to be -1 or 1. If binary (0 or 1) labels are
-provided we will convert them to -1 or 1.">Computes the hinge loss between y_true & y_pred. — loss_hinge • keras3 Computes the hinge loss between y_true & y_pred. — loss_hinge • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -141,7 +141,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_huber ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -149,11 +149,11 @@ See also
diff --git a/docs/reference/loss_huber.html b/docs/reference/loss_huber.html
index 3d08ddff5..4cff00904 100644
--- a/docs/reference/loss_huber.html
+++ b/docs/reference/loss_huber.html
@@ -9,7 +9,7 @@
}
loss <- mean(loss)
-See: Huber loss.">Computes the Huber loss between y_true & y_pred. — loss_huber • keras3 Computes the Huber loss between y_true & y_pred. — loss_huber • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -160,7 +160,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -168,11 +168,11 @@ See also
diff --git a/docs/reference/loss_kl_divergence.html b/docs/reference/loss_kl_divergence.html
index dc23af52b..cb96a5b0d 100644
--- a/docs/reference/loss_kl_divergence.html
+++ b/docs/reference/loss_kl_divergence.html
@@ -1,9 +1,15 @@
Computes Kullback-Leibler divergence loss between y_true & y_pred. — loss_kl_divergence • keras3 Computes Kullback-Leibler divergence loss between y_true & y_pred. — loss_kl_divergence • keras3
@@ -14,7 +20,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -77,6 +83,9 @@
Formula:
loss <- y_true * log ( y_true / y_pred )
+
y_true
and y_pred
are expected to be probability
+distributions, with values between 0 and 1. They will get
+clipped to the [0, 1]
range.
On this page
@@ -141,11 +150,11 @@ See also
diff --git a/docs/reference/loss_log_cosh.html b/docs/reference/loss_log_cosh.html
index 9f4678708..6142cb2ef 100644
--- a/docs/reference/loss_log_cosh.html
+++ b/docs/reference/loss_log_cosh.html
@@ -5,7 +5,7 @@
Note that log(cosh(x)) is approximately equal to (x ** 2) / 2 for small
x and to abs(x) - log(2) for large x. This means that 'logcosh' works
mostly like the mean squared error, but will not be so strongly affected by
-the occasional wildly incorrect prediction.">Computes the logarithm of the hyperbolic cosine of the prediction error. — loss_log_cosh • keras3 Computes the logarithm of the hyperbolic cosine of the prediction error. — loss_log_cosh • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -143,7 +143,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_huber ()
loss_kl_divergence ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -151,11 +151,11 @@ See also
diff --git a/docs/reference/loss_mean_absolute_error.html b/docs/reference/loss_mean_absolute_error.html
index 045f5a729..751af30df 100644
--- a/docs/reference/loss_mean_absolute_error.html
+++ b/docs/reference/loss_mean_absolute_error.html
@@ -1,7 +1,7 @@
Computes the mean of absolute difference between labels and predictions. — loss_mean_absolute_error • keras3 Computes the mean of absolute difference between labels and predictions. — loss_mean_absolute_error • keras3 Computes the mean absolute percentage error between y_true and y_pred. — loss_mean_absolute_percentage_error • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -142,7 +142,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_huber ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -150,11 +150,11 @@ See also
diff --git a/docs/reference/loss_mean_squared_error.html b/docs/reference/loss_mean_squared_error.html
index c1eafff82..e8d261ff0 100644
--- a/docs/reference/loss_mean_squared_error.html
+++ b/docs/reference/loss_mean_squared_error.html
@@ -1,7 +1,7 @@
Computes the mean of squares of errors between labels and predictions. — loss_mean_squared_error • keras3 Computes the mean of squares of errors between labels and predictions. — loss_mean_squared_error • keras3 Computes the mean squared logarithmic error between y_true and y_pred. — loss_mean_squared_logarithmic_error • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -139,7 +139,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_huber ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -147,11 +147,11 @@ See also
diff --git a/docs/reference/loss_poisson.html b/docs/reference/loss_poisson.html
index 212d248c9..090f4b526 100644
--- a/docs/reference/loss_poisson.html
+++ b/docs/reference/loss_poisson.html
@@ -1,7 +1,7 @@
Computes the Poisson loss between y_true & y_pred. — loss_poisson • keras3 Computes the Poisson loss between y_true & y_pred. — loss_poisson • keras3 Computes the crossentropy loss between the labels and predictions. — loss_sparse_categorical_crossentropy • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -203,7 +203,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_huber ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_squared_hinge ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -211,11 +211,11 @@ See also
diff --git a/docs/reference/loss_squared_hinge.html b/docs/reference/loss_squared_hinge.html
index c9a9cfff5..f4d2be794 100644
--- a/docs/reference/loss_squared_hinge.html
+++ b/docs/reference/loss_squared_hinge.html
@@ -3,7 +3,7 @@
loss <- square(maximum(1 - y_true * y_pred, 0))
y_true values are expected to be -1 or 1. If binary (0 or 1) labels are
-provided we will convert them to -1 or 1.">Computes the squared hinge loss between y_true & y_pred. — loss_squared_hinge • keras3 Computes the squared hinge loss between y_true & y_pred. — loss_squared_hinge • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -138,7 +138,7 @@ ExamplesSee also
+Other losses: Loss ()
loss_binary_crossentropy ()
loss_binary_focal_crossentropy ()
loss_categorical_crossentropy ()
loss_categorical_focal_crossentropy ()
loss_categorical_hinge ()
loss_cosine_similarity ()
loss_ctc ()
loss_dice ()
loss_hinge ()
loss_huber ()
loss_kl_divergence ()
loss_log_cosh ()
loss_mean_absolute_error ()
loss_mean_absolute_percentage_error ()
loss_mean_squared_error ()
loss_mean_squared_logarithmic_error ()
loss_poisson ()
loss_sparse_categorical_crossentropy ()
loss_tversky ()
metric_binary_crossentropy ()
metric_binary_focal_crossentropy ()
metric_categorical_crossentropy ()
metric_categorical_focal_crossentropy ()
metric_categorical_hinge ()
metric_hinge ()
metric_huber ()
metric_kl_divergence ()
metric_log_cosh ()
metric_mean_absolute_error ()
metric_mean_absolute_percentage_error ()
metric_mean_squared_error ()
metric_mean_squared_logarithmic_error ()
metric_poisson ()
metric_sparse_categorical_crossentropy ()
metric_squared_hinge ()
On this page
@@ -146,11 +146,11 @@ See also
diff --git a/docs/reference/loss_tversky.html b/docs/reference/loss_tversky.html
new file mode 100644
index 000000000..0e8ceda7f
--- /dev/null
+++ b/docs/reference/loss_tversky.html
@@ -0,0 +1,178 @@
+
+Computes the Tversky loss value between y_true and y_pred. — loss_tversky • keras3
+ Skip to contents
+
+
+
+
+
keras3
+
+
0.2.0.9000
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This loss function is weighted by the alpha and beta coefficients
+that penalize false positives and false negatives.
+
With alpha=0.5
and beta=0.5
, the loss value becomes equivalent to
+Dice Loss.
+
This loss function is weighted by the alpha and beta coefficients
+that penalize false positives and false negatives.
+
With alpha=0.5
and beta=0.5
, the loss value becomes equivalent to
+Dice Loss.
+
+
+
+
Usage
+
loss_tversky (
+ y_true ,
+ y_pred ,
+ ... ,
+ alpha = 0.5 ,
+ beta = 0.5 ,
+ reduction = "sum_over_batch_size" ,
+ name = "tversky"
+)
+
+
+
+
Arguments
+
y_true
+tensor of true targets.
+
+
+y_pred
+tensor of predicted targets.
+
+
+...
+For forward/backward compatability.
+
+
+alpha
+coefficient controlling incidence of false positives.
+
+
+beta
+coefficient controlling incidence of false negatives.
+
+
+reduction
+Type of reduction to apply to the loss. In almost all cases
+this should be "sum_over_batch_size"
.
+Supported options are "sum"
, "sum_over_batch_size"
or NULL
.
+
+
+name
+String, name for the object
+
+
+
+
Value
+
+
+
Tversky loss value.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/mark_active.html b/docs/reference/mark_active.html
index af70cf9fc..510bd48b2 100644
--- a/docs/reference/mark_active.html
+++ b/docs/reference/mark_active.html
@@ -1,6 +1,6 @@
active_property — mark_active • keras3 active_property — mark_active • keras3 Approximates the AUC (Area under the curve) of the ROC or PR curves. — metric_auc • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -318,11 +318,11 @@ See also
diff --git a/docs/reference/metric_binary_accuracy.html b/docs/reference/metric_binary_accuracy.html
index 05e0f928a..9424aa58d 100644
--- a/docs/reference/metric_binary_accuracy.html
+++ b/docs/reference/metric_binary_accuracy.html
@@ -4,7 +4,7 @@
frequency is ultimately returned as binary accuracy: an idempotent
operation that simply divides total by count.
If sample_weight is NULL, weights default to 1.
-Use sample_weight of 0 to mask values.">Calculates how often predictions match binary labels. — metric_binary_accuracy • keras3 Calculates how often predictions match binary labels. — metric_binary_accuracy • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -174,11 +174,11 @@ See also
diff --git a/docs/reference/metric_binary_crossentropy.html b/docs/reference/metric_binary_crossentropy.html
index 80eab21eb..cb8edceef 100644
--- a/docs/reference/metric_binary_crossentropy.html
+++ b/docs/reference/metric_binary_crossentropy.html
@@ -1,6 +1,6 @@
Computes the crossentropy metric between the labels and predictions. — metric_binary_crossentropy • keras3 Computes the crossentropy metric between the labels and predictions. — metric_binary_crossentropy • keras3 Computes the binary focal crossentropy loss. — metric_binary_focal_crossentropy • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -180,7 +180,7 @@ Examples
See also
-
@@ -189,11 +189,11 @@
See also
diff --git a/docs/reference/metric_binary_iou.html b/docs/reference/metric_binary_iou.html
index ec27fd1bb..27acfb9ee 100644
--- a/docs/reference/metric_binary_iou.html
+++ b/docs/reference/metric_binary_iou.html
@@ -14,7 +14,7 @@
converted to class 0 and those that are above the threshold are converted
to class 1.
IoUs for classes 0 and 1 are then computed, the mean of IoUs for the classes
-that are specified by target_class_ids is returned.">Computes the Intersection-Over-Union metric for class 0 and/or 1. — metric_binary_iou • keras3 Computes the Intersection-Over-Union metric for class 0 and/or 1. — metric_binary_iou • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -204,11 +204,11 @@ See also
diff --git a/docs/reference/metric_categorical_accuracy.html b/docs/reference/metric_categorical_accuracy.html
index 40e443eff..050601cd4 100644
--- a/docs/reference/metric_categorical_accuracy.html
+++ b/docs/reference/metric_categorical_accuracy.html
@@ -9,7 +9,7 @@
rather than as labels. If necessary, use op_one_hot to expand y_true as
a vector.
If sample_weight is NULL, weights default to 1.
-Use sample_weight of 0 to mask values.">Calculates how often predictions match one-hot labels. — metric_categorical_accuracy • keras3 Calculates how often predictions match one-hot labels. — metric_categorical_accuracy • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -184,11 +184,11 @@ See also
diff --git a/docs/reference/metric_categorical_crossentropy.html b/docs/reference/metric_categorical_crossentropy.html
index 8a7ab7950..94008e49e 100644
--- a/docs/reference/metric_categorical_crossentropy.html
+++ b/docs/reference/metric_categorical_crossentropy.html
@@ -2,7 +2,7 @@
Computes the crossentropy metric between the labels and predictions. — metric_categorical_crossentropy • keras3 Computes the crossentropy metric between the labels and predictions. — metric_categorical_crossentropy • keras3 Computes the categorical focal crossentropy loss. — metric_categorical_focal_crossentropy • keras3 Computes the categorical focal crossentropy loss. — metric_categorical_focal_crossentropy • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -145,7 +145,7 @@ Examples
See also
-
@@ -154,11 +154,11 @@
See also
diff --git a/docs/reference/metric_categorical_hinge.html b/docs/reference/metric_categorical_hinge.html
index 27cefaac0..2800484df 100644
--- a/docs/reference/metric_categorical_hinge.html
+++ b/docs/reference/metric_categorical_hinge.html
@@ -2,7 +2,7 @@
Computes the categorical hinge metric between y_true and y_pred. — metric_categorical_hinge • keras3 Computes the categorical hinge metric between y_true and y_pred. — metric_categorical_hinge • keras3 Computes the cosine similarity between the labels and predictions. — metric_cosine_similarity • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -158,11 +158,11 @@ See also
diff --git a/docs/reference/metric_f1_score.html b/docs/reference/metric_f1_score.html
index 9700e85b6..d35a54958 100644
--- a/docs/reference/metric_f1_score.html
+++ b/docs/reference/metric_f1_score.html
@@ -4,7 +4,7 @@
This is the harmonic mean of precision and recall.
Its output range is [0, 1]. It works for both multi-class
-and multi-label classification.">Computes F-1 Score. — metric_f1_score • keras3 Computes F-1 Score. — metric_f1_score • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -175,11 +175,11 @@ See also
diff --git a/docs/reference/metric_false_negatives.html b/docs/reference/metric_false_negatives.html
index c4727120e..fdd9596f8 100644
--- a/docs/reference/metric_false_negatives.html
+++ b/docs/reference/metric_false_negatives.html
@@ -3,7 +3,7 @@
false negatives. This metric creates one local variable, accumulator
that is used to keep track of the number of false negatives.
If sample_weight is NULL, weights default to 1.
-Use sample_weight of 0 to mask values.">Calculates the number of false negatives. — metric_false_negatives • keras3 Calculates the number of false negatives. — metric_false_negatives • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -151,11 +151,11 @@ See also
diff --git a/docs/reference/metric_false_positives.html b/docs/reference/metric_false_positives.html
index 8cca5079e..47704119d 100644
--- a/docs/reference/metric_false_positives.html
+++ b/docs/reference/metric_false_positives.html
@@ -3,7 +3,7 @@
false positives. This metric creates one local variable, accumulator
that is used to keep track of the number of false positives.
If sample_weight is NULL, weights default to 1.
-Use sample_weight of 0 to mask values.">Calculates the number of false positives. — metric_false_positives • keras3 Calculates the number of false positives. — metric_false_positives • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -150,11 +150,11 @@ See also
diff --git a/docs/reference/metric_fbeta_score.html b/docs/reference/metric_fbeta_score.html
index 410e3ecbd..2d1176875 100644
--- a/docs/reference/metric_fbeta_score.html
+++ b/docs/reference/metric_fbeta_score.html
@@ -5,7 +5,7 @@
This is the weighted harmonic mean of precision and recall.
Its output range is [0, 1]. It works for both multi-class
-and multi-label classification.">Computes F-Beta score. — metric_fbeta_score • keras3 Computes F-Beta score. — metric_fbeta_score • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -185,11 +185,11 @@ See also
diff --git a/docs/reference/metric_hinge.html b/docs/reference/metric_hinge.html
index cb22076c3..785771cb4 100644
--- a/docs/reference/metric_hinge.html
+++ b/docs/reference/metric_hinge.html
@@ -3,7 +3,7 @@
loss <- mean(maximum(1 - y_true * y_pred, 0), axis=-1)
y_true values are expected to be -1 or 1. If binary (0 or 1) labels are
-provided we will convert them to -1 or 1.">Computes the hinge metric between y_true and y_pred. — metric_hinge • keras3 Computes the hinge metric between y_true and y_pred. — metric_hinge • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -145,7 +145,7 @@ Usage See also
@@ -155,11 +155,11 @@ See also
diff --git a/docs/reference/metric_huber.html b/docs/reference/metric_huber.html
index 91c28c987..0383d3694 100644
--- a/docs/reference/metric_huber.html
+++ b/docs/reference/metric_huber.html
@@ -9,7 +9,7 @@
}
loss <- mean(loss)
-See: Huber loss.">Computes Huber loss value. — metric_huber • keras3 Computes Huber loss value. — metric_huber • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -137,7 +137,7 @@ Examples
See also
-
@@ -146,11 +146,11 @@
See also
diff --git a/docs/reference/metric_iou.html b/docs/reference/metric_iou.html
index c67847911..43e748052 100644
--- a/docs/reference/metric_iou.html
+++ b/docs/reference/metric_iou.html
@@ -11,7 +11,7 @@
Note, this class first computes IoUs for all individual classes, then
returns the mean of IoUs for the classes that are specified by
target_class_ids. If target_class_ids has only one id value, the IoU of
-that specific class is returned.">Computes the Intersection-Over-Union metric for specific target classes. — metric_iou • keras3 Computes the Intersection-Over-Union metric for specific target classes. — metric_iou • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -212,11 +212,11 @@ See also
diff --git a/docs/reference/metric_kl_divergence.html b/docs/reference/metric_kl_divergence.html
index 9eeec6a2a..ef9d3d5c4 100644
--- a/docs/reference/metric_kl_divergence.html
+++ b/docs/reference/metric_kl_divergence.html
@@ -1,9 +1,15 @@
Computes Kullback-Leibler divergence metric between y_true and — metric_kl_divergence • keras3 Computes Kullback-Leibler divergence metric between y_true and — metric_kl_divergence • keras3
@@ -14,7 +20,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -77,6 +83,9 @@
Formula:
loss <- y_true * log ( y_true / y_pred )
+
y_true
and y_pred
are expected to be probability
+distributions, with values between 0 and 1. They will get
+clipped to the [0, 1]
range.
@@ -141,7 +150,7 @@
Usage See also
@@ -151,11 +160,11 @@ See also
diff --git a/docs/reference/metric_log_cosh.html b/docs/reference/metric_log_cosh.html
index fe9b084f4..63226c54a 100644
--- a/docs/reference/metric_log_cosh.html
+++ b/docs/reference/metric_log_cosh.html
@@ -5,7 +5,7 @@
Note that log(cosh(x)) is approximately equal to (x ** 2) / 2 for small
x and to abs(x) - log(2) for large x. This means that 'logcosh' works
mostly like the mean squared error, but will not be so strongly affected by
-the occasional wildly incorrect prediction.">Logarithm of the hyperbolic cosine of the prediction error. — metric_log_cosh • keras3 Logarithm of the hyperbolic cosine of the prediction error. — metric_log_cosh • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -123,7 +123,7 @@ Examples
See also
-
@@ -132,11 +132,11 @@
See also
diff --git a/docs/reference/metric_log_cosh_error.html b/docs/reference/metric_log_cosh_error.html
index 09804ae40..027270df7 100644
--- a/docs/reference/metric_log_cosh_error.html
+++ b/docs/reference/metric_log_cosh_error.html
@@ -2,7 +2,7 @@
Computes the logarithm of the hyperbolic cosine of the prediction error. — metric_log_cosh_error • keras3 Computes the logarithm of the hyperbolic cosine of the prediction error. — metric_log_cosh_error • keras3 Compute the (weighted) mean of the given values. — metric_mean • keras3 Compute the (weighted) mean of the given values. — metric_mean • keras3 Computes the mean absolute error between the labels and predictions. — metric_mean_absolute_error • keras3 Computes the mean absolute error between the labels and predictions. — metric_mean_absolute_error • keras3 Computes mean absolute percentage error between y_true and y_pred. — metric_mean_absolute_percentage_error • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -157,7 +157,7 @@ ExamplesSee also
@@ -167,11 +167,11 @@ See also
diff --git a/docs/reference/metric_mean_iou.html b/docs/reference/metric_mean_iou.html
index 7a32268ef..bd4d2295a 100644
--- a/docs/reference/metric_mean_iou.html
+++ b/docs/reference/metric_mean_iou.html
@@ -9,7 +9,7 @@
If sample_weight is NULL, weights default to 1.
Use sample_weight of 0 to mask values.
Note that this class first computes IoUs for all individual classes, then
-returns the mean of these values.">Computes the mean Intersection-Over-Union metric. — metric_mean_iou • keras3 Computes the mean Intersection-Over-Union metric. — metric_mean_iou • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -207,11 +207,11 @@ See also
diff --git a/docs/reference/metric_mean_squared_error.html b/docs/reference/metric_mean_squared_error.html
index 59c4f6a84..abfdd85a2 100644
--- a/docs/reference/metric_mean_squared_error.html
+++ b/docs/reference/metric_mean_squared_error.html
@@ -1,7 +1,7 @@
Computes the mean squared error between y_true and y_pred. — metric_mean_squared_error • keras3 Computes the mean squared error between y_true and y_pred. — metric_mean_squared_error • keras3 Computes mean squared logarithmic error between y_true and y_pred. — metric_mean_squared_logarithmic_error • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -157,7 +157,7 @@ ExamplesSee also
@@ -167,11 +167,11 @@ See also
diff --git a/docs/reference/metric_mean_wrapper.html b/docs/reference/metric_mean_wrapper.html
index 76bc99b17..50d56e1ad 100644
--- a/docs/reference/metric_mean_wrapper.html
+++ b/docs/reference/metric_mean_wrapper.html
@@ -14,7 +14,7 @@
## tf.Tensor(0.5, shape=(), dtype=float32)
-">Wrap a stateless metric function with the Mean metric. — metric_mean_wrapper • keras3 Wrap a stateless metric function with the Mean metric. — metric_mean_wrapper • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -160,11 +160,11 @@ See also
diff --git a/docs/reference/metric_one_hot_iou.html b/docs/reference/metric_one_hot_iou.html
index 6fcb9072f..bec9a3008 100644
--- a/docs/reference/metric_one_hot_iou.html
+++ b/docs/reference/metric_one_hot_iou.html
@@ -18,7 +18,7 @@
is the same as class IoU. In this case, use IoU instead.
Also, make sure that num_classes is equal to the number of classes in the
data, to avoid a "labels out of bound" error when the confusion matrix is
-computed.'>Computes the Intersection-Over-Union metric for one-hot encoded labels. — metric_one_hot_iou • keras3 Computes the Intersection-Over-Union metric for one-hot encoded labels. — metric_one_hot_iou • keras3 Computes mean Intersection-Over-Union metric for one-hot encoded labels. — metric_one_hot_mean_iou • keras3 Computes mean Intersection-Over-Union metric for one-hot encoded labels. — metric_one_hot_mean_iou • keras3 Computes R2 score. — metric_r2_score • keras3 Computes R2 score. — metric_r2_score • keras3 Normalizes an array. — normalize • keras3 Normalizes an array. — normalize • keras3 Compute the absolute value element-wise. — op_abs • keras3 Compute the absolute value element-wise. — op_abs • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -100,8 +100,8 @@ Example
On this page
@@ -109,11 +109,11 @@ See also
diff --git a/docs/reference/op_add.html b/docs/reference/op_add.html
index 32be7cc6f..0df08ee28 100644
--- a/docs/reference/op_add.html
+++ b/docs/reference/op_add.html
@@ -1,5 +1,5 @@
-Add arguments element-wise. — op_add • keras3 Add arguments element-wise. — op_add • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -127,8 +127,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -136,11 +136,11 @@ See also
diff --git a/docs/reference/op_all.html b/docs/reference/op_all.html
index b5b010586..fab818e48 100644
--- a/docs/reference/op_all.html
+++ b/docs/reference/op_all.html
@@ -1,5 +1,5 @@
-Test whether all array elements along a given axis evaluate to TRUE. — op_all • keras3 Test whether all array elements along a given axis evaluate to TRUE. — op_all • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -96,7 +96,7 @@ Arguments
@@ -129,8 +129,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_add ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -138,11 +138,11 @@ See also
diff --git a/docs/reference/op_any.html b/docs/reference/op_any.html
index c639dfc01..d78572c6b 100644
--- a/docs/reference/op_any.html
+++ b/docs/reference/op_any.html
@@ -1,5 +1,5 @@
-Test whether any array element along a given axis evaluates to TRUE. — op_any • keras3 Test whether any array element along a given axis evaluates to TRUE. — op_any • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -139,8 +139,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_add ()
op_all ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_all ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -148,11 +148,11 @@ See also
diff --git a/docs/reference/op_append.html b/docs/reference/op_append.html
index 69289a2ff..428d21bed 100644
--- a/docs/reference/op_append.html
+++ b/docs/reference/op_append.html
@@ -1,5 +1,5 @@
-Append tensor x2 to the end of tensor x1. — op_append • keras3 Append tensor x2 to the end of tensor x1. — op_append • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -126,8 +126,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -135,11 +135,11 @@ See also
diff --git a/docs/reference/op_arange.html b/docs/reference/op_arange.html
index 38cc88b0f..fce5026b1 100644
--- a/docs/reference/op_arange.html
+++ b/docs/reference/op_arange.html
@@ -8,7 +8,7 @@
arange(start, stop, step): Values are generated within the half-open
interval [start, stop), with spacing between values given by step.
-">Return evenly spaced values within a given interval. — op_arange • keras3 Return evenly spaced values within a given interval. — op_arange • keras3 keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -160,8 +160,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -169,11 +169,11 @@ See also
diff --git a/docs/reference/op_arccos.html b/docs/reference/op_arccos.html
index e7ba56684..d2eec8709 100644
--- a/docs/reference/op_arccos.html
+++ b/docs/reference/op_arccos.html
@@ -1,5 +1,5 @@
-Trigonometric inverse cosine, element-wise. — op_arccos • keras3 Trigonometric inverse cosine, element-wise. — op_arccos • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -103,8 +103,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -112,11 +112,11 @@ See also
diff --git a/docs/reference/op_arccosh.html b/docs/reference/op_arccosh.html
index b3aa953ab..b797561d3 100644
--- a/docs/reference/op_arccosh.html
+++ b/docs/reference/op_arccosh.html
@@ -1,5 +1,5 @@
-Inverse hyperbolic cosine, element-wise. — op_arccosh • keras3 Inverse hyperbolic cosine, element-wise. — op_arccosh • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -100,8 +100,8 @@ Examples
On this page
@@ -109,11 +109,11 @@ See also
diff --git a/docs/reference/op_arcsin.html b/docs/reference/op_arcsin.html
index f6dca5986..306f73b51 100644
--- a/docs/reference/op_arcsin.html
+++ b/docs/reference/op_arcsin.html
@@ -1,5 +1,5 @@
-Inverse sine, element-wise. — op_arcsin • keras3 Inverse sine, element-wise. — op_arcsin • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -103,8 +103,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -112,11 +112,11 @@ See also
diff --git a/docs/reference/op_arcsinh.html b/docs/reference/op_arcsinh.html
index be4606aec..fec331fc7 100644
--- a/docs/reference/op_arcsinh.html
+++ b/docs/reference/op_arcsinh.html
@@ -1,5 +1,5 @@
-Inverse hyperbolic sine, element-wise. — op_arcsinh • keras3 Inverse hyperbolic sine, element-wise. — op_arcsinh • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -102,8 +102,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -111,11 +111,11 @@ See also
diff --git a/docs/reference/op_arctan.html b/docs/reference/op_arctan.html
index d15786859..4f195b3d5 100644
--- a/docs/reference/op_arctan.html
+++ b/docs/reference/op_arctan.html
@@ -1,5 +1,5 @@
-Trigonometric inverse tangent, element-wise. — op_arctan • keras3 Trigonometric inverse tangent, element-wise. — op_arctan • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -103,8 +103,8 @@ ExamplesSee also
+Other numpy ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_bincount ()
op_broadcast_to ()
op_ceil ()
op_clip ()
op_concatenate ()
op_conj ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_cumprod ()
op_cumsum ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_einsum ()
op_empty ()
op_equal ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_eye ()
op_flip ()
op_floor ()
op_floor_divide ()
op_full ()
op_full_like ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hstack ()
op_identity ()
op_imag ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_matmul ()
op_max ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moveaxis ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_not_equal ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_repeat ()
op_reshape ()
op_roll ()
op_round ()
op_select ()
op_sign ()
op_sin ()
op_sinh ()
op_size ()
op_sort ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_subtract ()
op_sum ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_var ()
op_vdot ()
op_vectorize ()
op_vstack ()
op_where ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_average_pool ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -112,11 +112,11 @@ See also
diff --git a/docs/reference/op_arctan2.html b/docs/reference/op_arctan2.html
index 41e4cfbcb..d5c43e5e9 100644
--- a/docs/reference/op_arctan2.html
+++ b/docs/reference/op_arctan2.html
@@ -5,7 +5,7 @@
through the point (x2, x1). (Note the role reversal: the "y-coordinate"
is the first function parameter, the "x-coordinate" is the second.) By IEEE
convention, this function is defined for x2 = +/-0 and for either or both
-of x1 and x2 = +/-inf.'>Element-wise arc tangent of x1/x2 choosing the quadrant correctly. — op_arctan2 • keras3 Element-wise arc tangent of x1/x2 choosing the quadrant correctly. — op_arctan2 • keras3
-## 2
-
+
## Error in op_average(data, weights = op_array(c(1/4, 3/4))) :
+## Axis must be specified when shapes of x and weights differ.
+
On this page
@@ -160,11 +159,11 @@ See also
diff --git a/docs/reference/op_average_pool.html b/docs/reference/op_average_pool.html
index bacbf5a6e..c5018d2eb 100644
--- a/docs/reference/op_average_pool.html
+++ b/docs/reference/op_average_pool.html
@@ -1,5 +1,5 @@
-Average pooling operation. — op_average_pool • keras3 Average pooling operation. — op_average_pool • keras3
@@ -10,7 +10,7 @@
keras3
- 0.1.0.9000
+ 0.2.0.9000
@@ -138,7 +138,7 @@ See also
Other nn ops: op_batch_normalization ()
op_binary_crossentropy ()
op_categorical_crossentropy ()
op_conv ()
op_conv_transpose ()
op_ctc_loss ()
op_depthwise_conv ()
op_elu ()
op_gelu ()
op_hard_sigmoid ()
op_hard_silu ()
op_leaky_relu ()
op_log_sigmoid ()
op_log_softmax ()
op_max_pool ()
op_moments ()
op_multi_hot ()
op_normalize ()
op_one_hot ()
op_relu ()
op_relu6 ()
op_selu ()
op_separable_conv ()
op_sigmoid ()
op_silu ()
op_softmax ()
op_softplus ()
op_softsign ()
op_sparse_categorical_crossentropy ()
-Other ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
+Other ops: op_abs ()
op_add ()
op_all ()
op_any ()
op_append ()
op_arange ()
op_arccos ()
op_arccosh ()
op_arcsin ()
op_arcsinh ()
op_arctan ()
op_arctan2 ()
op_arctanh ()
op_argmax ()
op_argmin ()
op_argsort ()
op_array ()
op_average ()
op_batch_normalization ()
op_binary_crossentropy ()
op_bincount ()
op_broadcast_to ()
op_cast ()
op_categorical_crossentropy ()
op_ceil ()
op_cholesky ()
op_clip ()
op_concatenate ()
op_cond ()
op_conj ()
op_conv ()
op_conv_transpose ()
op_convert_to_numpy ()
op_convert_to_tensor ()
op_copy ()
op_correlate ()
op_cos ()
op_cosh ()
op_count_nonzero ()
op_cross ()
op_ctc_decode ()
op_ctc_loss ()
op_cumprod ()
op_cumsum ()
op_custom_gradient ()
op_depthwise_conv ()
op_det ()
op_diag ()
op_diagonal ()
op_diff ()
op_digitize ()
op_divide ()
op_divide_no_nan ()
op_dot ()
op_eig ()
op_eigh ()
op_einsum ()
op_elu ()
op_empty ()
op_equal ()
op_erf ()
op_erfinv ()
op_exp ()
op_expand_dims ()
op_expm1 ()
op_extract_sequences ()
op_eye ()
op_fft ()
op_fft2 ()
op_flip ()
op_floor ()
op_floor_divide ()
op_fori_loop ()
op_full ()
op_full_like ()
op_gelu ()
op_get_item ()
op_greater ()
op_greater_equal ()
op_hard_sigmoid ()
op_hard_silu ()
op_hstack ()
op_identity ()
op_imag ()
op_image_affine_transform ()
op_image_crop ()
op_image_extract_patches ()
op_image_map_coordinates ()
op_image_pad ()
op_image_resize ()
op_image_rgb_to_grayscale ()
op_in_top_k ()
op_inv ()
op_irfft ()
op_is_tensor ()
op_isclose ()
op_isfinite ()
op_isinf ()
op_isnan ()
op_istft ()
op_leaky_relu ()
op_less ()
op_less_equal ()
op_linspace ()
op_log ()
op_log10 ()
op_log1p ()
op_log2 ()
op_log_sigmoid ()
op_log_softmax ()
op_logaddexp ()
op_logical_and ()
op_logical_not ()
op_logical_or ()
op_logical_xor ()
op_logspace ()
op_logsumexp ()
op_lu_factor ()
op_matmul ()
op_max ()
op_max_pool ()
op_maximum ()
op_mean ()
op_median ()
op_meshgrid ()
op_min ()
op_minimum ()
op_mod ()
op_moments ()
op_moveaxis ()
op_multi_hot ()
op_multiply ()
op_nan_to_num ()
op_ndim ()
op_negative ()
op_nonzero ()
op_norm ()
op_normalize ()
op_not_equal ()
op_one_hot ()
op_ones ()
op_ones_like ()
op_outer ()
op_pad ()
op_power ()
op_prod ()
op_qr ()
op_quantile ()
op_ravel ()
op_real ()
op_reciprocal ()
op_relu ()
op_relu6 ()
op_repeat ()
op_reshape ()
op_rfft ()
op_roll ()
op_round ()
op_rsqrt ()
op_scatter ()
op_scatter_update ()
op_segment_max ()
op_segment_sum ()
op_select ()
op_selu ()
op_separable_conv ()
op_shape ()
op_sigmoid ()
op_sign ()
op_silu ()
op_sin ()
op_sinh ()
op_size ()
op_slice ()
op_slice_update ()
op_softmax ()
op_softplus ()
op_softsign ()
op_solve ()
op_solve_triangular ()
op_sort ()
op_sparse_categorical_crossentropy ()
op_split ()
op_sqrt ()
op_square ()
op_squeeze ()
op_stack ()
op_std ()
op_stft ()
op_stop_gradient ()
op_subtract ()
op_sum ()
op_svd ()
op_swapaxes ()
op_take ()
op_take_along_axis ()
op_tan ()
op_tanh ()
op_tensordot ()
op_tile ()
op_top_k ()
op_trace ()
op_transpose ()
op_tri ()
op_tril ()
op_triu ()
op_unstack ()
op_var ()
op_vdot ()
op_vectorize ()
op_vectorized_map ()
op_vstack ()
op_where ()
op_while_loop ()
op_zeros ()
op_zeros_like ()
On this page
@@ -146,11 +146,11 @@ See also