/* Widget Name: Button Description: Create a custom button with flexible styling, icon support, and click tracking functionality. Author: SiteOrigin Author URI: https://siteorigin.com Documentation: https://siteorigin.com/widgets-bundle/button-widget-documentation/ Keywords: event, icon, link */ class SiteOrigin_Widget_Button_Widget extends SiteOrigin_Widget { public function __construct() { parent::__construct( 'sow-button', __( 'SiteOrigin Button', 'so-widgets-bundle' ), array( 'description' => __( 'Create a custom button with flexible styling, icon support, and click tracking functionality.', 'so-widgets-bundle' ), 'help' => 'https://siteorigin.com/widgets-bundle/button-widget-documentation/', ), array( ), false, plugin_dir_path( __FILE__ ) ); } public function get_settings_form() { return array( 'responsive_breakpoint' => array( 'type' => 'measurement', 'label' => __( 'Responsive Breakpoint', 'so-widgets-bundle' ), 'default' => '780px', 'description' => __( 'This setting controls when the Mobile Align setting will be used. The default value is 780px.', 'so-widgets-bundle' ), ), ); } public function initialize() { $this->register_frontend_styles( array( array( 'sow-button-base', plugin_dir_url( __FILE__ ) . 'css/style.css', array(), SOW_BUNDLE_VERSION, ), ) ); } public function get_widget_form() { return array( 'text' => array( 'type' => 'text', 'label' => __( 'Button Text', 'so-widgets-bundle' ), ), 'url' => array( 'type' => 'link', 'label' => __( 'Destination URL', 'so-widgets-bundle' ), 'allow_shortcode' => true, ), 'new_window' => array( 'type' => 'checkbox', 'default' => false, 'label' => __( 'Open in a new window', 'so-widgets-bundle' ), ), 'download' => array( 'type' => 'checkbox', 'default' => false, 'label' => __( 'Download', 'so-widgets-bundle' ), 'description' => __( 'The Destination URL will be downloaded when a user clicks on the button.', 'so-widgets-bundle' ), ), 'button_icon' => array( 'type' => 'section', 'label' => __( 'Icon', 'so-widgets-bundle' ), 'fields' => array( 'icon_selected' => array( 'type' => 'icon', 'label' => __( 'Icon', 'so-widgets-bundle' ), ), 'icon_color' => array( 'type' => 'color', 'label' => __( 'Icon Color', 'so-widgets-bundle' ), ), 'icon' => array( 'type' => 'media', 'label' => __( 'Image Icon', 'so-widgets-bundle' ), 'description' => __( 'Replaces the icon with your own image icon.', 'so-widgets-bundle' ), ), 'icon_placement' => array( 'type' => 'select', 'label' => __( 'Icon Placement', 'so-widgets-bundle' ), 'default' => 'left', 'options' => array( 'top' => __( 'Top', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'bottom' => __( 'Bottom', 'so-widgets-bundle' ), 'left' => __( 'Left', 'so-widgets-bundle' ), ), ), ), ), 'design' => array( 'type' => 'section', 'label' => __( 'Design and Layout', 'so-widgets-bundle' ), 'hide' => true, 'fields' => array( 'width' => array( 'type' => 'measurement', 'label' => __( 'Width', 'so-widgets-bundle' ), 'description' => __( 'Leave blank to let the button resize according to content.', 'so-widgets-bundle' ), ), 'align' => array( 'type' => 'select', 'label' => __( 'Align', 'so-widgets-bundle' ), 'default' => 'center', 'options' => array( 'left' => __( 'Left', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'center' => __( 'Center', 'so-widgets-bundle' ), 'justify' => __( 'Full Width', 'so-widgets-bundle' ), ), ), 'mobile_align' => array( 'type' => 'select', 'label' => __( 'Mobile Align', 'so-widgets-bundle' ), 'default' => 'center', 'options' => array( 'left' => __( 'Left', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'center' => __( 'Center', 'so-widgets-bundle' ), 'justify' => __( 'Full Width', 'so-widgets-bundle' ), ), ), 'theme' => array( 'type' => 'select', 'label' => __( 'Button Theme', 'so-widgets-bundle' ), 'default' => 'flat', 'options' => array( 'atom' => __( 'Atom', 'so-widgets-bundle' ), 'flat' => __( 'Flat', 'so-widgets-bundle' ), 'wire' => __( 'Wire', 'so-widgets-bundle' ), ), ), 'button_color' => array( 'type' => 'color', 'label' => __( 'Button Color', 'so-widgets-bundle' ), ), 'text_color' => array( 'type' => 'color', 'label' => __( 'Text Color', 'so-widgets-bundle' ), ), 'hover' => array( 'type' => 'checkbox', 'default' => true, 'label' => __( 'Use hover effects', 'so-widgets-bundle' ), 'state_emitter' => array( 'callback' => 'conditional', 'args' => array( 'hover[show]: val', 'hover[hide]: ! val', ), ), ), 'hover_background_color' => array( 'type' => 'color', 'label' => __( 'Hover Background Color', 'so-widgets-bundle' ), 'state_handler' => array( 'hover[show]' => array( 'show' ), 'hover[hide]' => array( 'hide' ), ), ), 'hover_text_color' => array( 'type' => 'color', 'label' => __( 'Hover Text Color', 'so-widgets-bundle' ), 'state_handler' => array( 'hover[show]' => array( 'show' ), 'hover[hide]' => array( 'hide' ), ), ), 'font' => array( 'type' => 'font', 'label' => __( 'Font', 'so-widgets-bundle' ), 'default' => 'default', ), 'font_size' => array( 'type' => 'measurement', 'label' => __( 'Font Size', 'so-widgets-bundle' ), 'default' => '1em', ), 'icon_size' => array( 'type' => 'measurement', 'label' => __( 'Icon Size', 'so-widgets-bundle' ), 'default' => '1.3em', ), 'padding' => array( 'type' => 'measurement', 'label' => __( 'Padding', 'so-widgets-bundle' ), 'default' => '1em', ), 'rounding' => array( 'type' => 'multi-measurement', 'label' => __( 'Rounding', 'so-widgets-bundle' ), 'default' => '0.25em 0.25em 0.25em 0.25em', 'measurements' => array( 'top' => array( 'label' => __( 'Top', 'so-widgets-bundle' ), ), 'right' => array( 'label' => __( 'Right', 'so-widgets-bundle' ), ), 'bottom' => array( 'label' => __( 'Bottom', 'so-widgets-bundle' ), ), 'left' => array( 'label' => __( 'Left', 'so-widgets-bundle' ), ), ), ), ), ), 'attributes' => array( 'type' => 'section', 'label' => __( 'Other Attributes and SEO', 'so-widgets-bundle' ), 'hide' => true, 'fields' => array( 'id' => array( 'type' => 'text', 'label' => __( 'Button ID', 'so-widgets-bundle' ), 'description' => __( 'An ID attribute allows you to target this button in JavaScript.', 'so-widgets-bundle' ), ), 'classes' => array( 'type' => 'text', 'label' => __( 'Button Classes', 'so-widgets-bundle' ), 'description' => __( 'Additional CSS classes added to the button link.', 'so-widgets-bundle' ), ), 'title' => array( 'type' => 'text', 'label' => __( 'Title Attribute', 'so-widgets-bundle' ), 'description' => __( 'Adds a title attribute to the button link.', 'so-widgets-bundle' ), ), 'on_click' => array( 'type' => 'text', 'label' => __( 'Onclick', 'so-widgets-bundle' ), 'description' => __( 'Run this JavaScript when the button is clicked. Ideal for tracking.', 'so-widgets-bundle' ), 'onclick' => true, ), 'rel' => array( 'type' => 'text', 'label' => __( 'Rel Attribute', 'so-widgets-bundle' ), 'description' => __( 'Adds a rel attribute to the button link.', 'so-widgets-bundle' ), ), ), ), ); } public function get_style_name( $instance ) { if ( empty( $instance['design']['theme'] ) ) { return 'atom'; } return $instance['design']['theme']; } /** * Get the variables for the Button Widget. * * @return array */ public function get_template_variables( $instance, $args ) { $button_attributes = array(); $attributes = $instance['attributes']; $classes = ! empty( $attributes['classes'] ) ? $attributes['classes'] : ''; if ( ! empty( $classes ) ) { $classes .= ' '; } $classes .= 'sowb-button ow-icon-placement-' . $instance['button_icon']['icon_placement']; if ( ! empty( $instance['design']['hover'] ) ) { $classes .= ' ow-button-hover'; } $button_attributes['class'] = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $classes ) ) ); if ( ! empty( $instance['new_window'] ) ) { $button_attributes['target'] = '_blank'; $button_attributes['rel'] = 'noopener noreferrer'; } if ( ! empty( $instance['download'] ) ) { $button_attributes['download'] = null; } if ( ! empty( $attributes['id'] ) ) { $button_attributes['id'] = $attributes['id']; } if ( ! empty( $attributes['title'] ) ) { $button_attributes['title'] = $attributes['title']; } if ( ! empty( $attributes['rel'] ) ) { if ( isset( $button_attributes['rel'] ) ) { $button_attributes['rel'] .= " $attributes[rel]"; } else { $button_attributes['rel'] = $attributes['rel']; } } $icon_image_url = ''; if ( ! empty( $instance['button_icon']['icon'] ) ) { $attachment = wp_get_attachment_image_src( $instance['button_icon']['icon'] ); if ( ! empty( $attachment ) ) { $icon_image_url = $attachment[0]; } } return array( 'button_attributes' => apply_filters( 'siteorigin_widgets_button_attributes', $button_attributes, $instance ), 'href' => ! empty( $instance['url'] ) ? $instance['url'] : '', 'on_click' => ! empty( $attributes['on_click'] ) ? $attributes['on_click'] : '', 'align' => $instance['design']['align'], 'icon_image_url' => $icon_image_url, 'icon' => $instance['button_icon']['icon_selected'], 'icon_color' => $instance['button_icon']['icon_color'], 'text' => $instance['text'], ); } /** * Get the variables that we'll be injecting into the less stylesheet. * * @return array */ public function get_less_variables( $instance ) { if ( empty( $instance ) || empty( $instance['design'] ) ) { return array(); } $text_color = isset( $instance['design']['text_color'] ) ? $instance['design']['text_color'] : ''; $button_color = isset( $instance['design']['button_color'] ) ? $instance['design']['button_color'] : ''; $less_vars = array( 'button_width' => isset( $instance['design']['width'] ) ? $instance['design']['width'] : '', 'button_color' => $button_color, 'text_color' => $text_color, 'icon_size' => ! empty( $instance['design']['icon_size'] ) ? $instance['design']['icon_size'] : '1.3em', 'hover_text_color' => ! empty( $instance['design']['hover_text_color'] ) ? $instance['design']['hover_text_color'] : $text_color, 'hover_background_color' => ! empty( $instance['design']['hover_background_color'] ) ? $instance['design']['hover_background_color'] : $button_color, 'font_size' => isset( $instance['design']['font_size'] ) ? $instance['design']['font_size'] : '', 'rounding' => isset( $instance['design']['rounding'] ) ? $instance['design']['rounding'] : '', 'padding' => isset( $instance['design']['padding'] ) ? $instance['design']['padding'] : '', 'has_text' => empty( $instance['text'] ) ? 'false' : 'true', 'responsive_breakpoint' => $this->get_global_settings( 'responsive_breakpoint' ), 'align' => ! empty( $instance['design']['align'] ) ? $instance['design']['align'] : 'center', 'mobile_align' => ! empty( $instance['design']['mobile_align'] ) ? $instance['design']['mobile_align'] : 'center', 'has_button_icon' => empty( $instance['button_icon']['icon_selected'] ) ? 'false' : 'true', ); if ( ! empty( $instance['design']['font'] ) ) { $font = siteorigin_widget_get_font( $instance['design']['font'] ); $less_vars['button_font'] = $font['family']; if ( ! empty( $font['weight'] ) ) { $less_vars['button_font_weight'] = $font['weight_raw']; $less_vars['button_font_style'] = $font['style']; } } return $less_vars; } /** * Make sure the instance is the most up to date version. * * @return mixed */ public function modify_instance( $instance ) { if ( empty( $instance ) ) { return array(); } $migrate_props = array( 'button_icon' => array( 'icon_selected', 'icon_color', 'icon', ), 'design' => array( 'align', 'theme', 'button_color', 'text_color', 'hover', 'hover_text_color', 'hover_background_color', 'font_size', 'rounding', 'padding', ), 'attributes' => array( 'id', ), ); foreach ( $migrate_props as $prop => $sub_props ) { if ( empty( $instance[ $prop ] ) ) { $instance[ $prop ] = array(); foreach ( $sub_props as $sub_prop ) { if ( isset( $instance[ $sub_prop ] ) ) { $instance[ $prop ][ $sub_prop ] = $instance[ $sub_prop ]; unset( $instance[ $sub_prop ] ); } } } } // Migrate onclick setting to prevent Wordfence flag. if ( ! empty( $instance['attributes'] ) && ! empty( $instance['attributes']['onclick'] ) ) { $instance['attributes']['on_click'] = $instance['attributes']['onclick']; } // If the mobile_align setting isn't set, set it to the same value as the align value. if ( ! empty( $instance['design'] ) && ! empty( $instance['design']['align'] ) && empty( $instance['design']['mobile_align'] ) ) { $instance['design']['mobile_align'] = $instance['design']['align']; } // Migrate predefined settings to more customizable settings. if ( ! empty( $instance['design']['font_size'] ) && is_numeric( $instance['design']['font_size'] ) ) { $instance['design']['font_size'] .= 'em'; } if ( ! empty( $instance['design']['padding'] ) && is_numeric( $instance['design']['padding'] ) ) { $instance['design']['padding'] .= 'em'; } if ( ! empty( $instance['design']['rounding'] ) && is_numeric( $instance['design']['rounding'] ) ) { $instance['design']['rounding'] = $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em'; } if ( empty( $instance['design']['icon_size'] ) ) { $instance['design']['icon_size'] = '1.3em'; } return $instance; } public function get_form_teaser() { if ( class_exists( 'SiteOrigin_Premium' ) ) { return false; } return array( sprintf( __( 'Add a beautiful tooltip to the Button Widget with %sSiteOrigin Premium%s', 'so-widgets-bundle' ), '', '' ), ); } } siteorigin_widget_register( 'sow-button', __FILE__, 'SiteOrigin_Widget_Button_Widget' );{"id":79441,"date":"2026-05-22T22:34:54","date_gmt":"2026-05-22T22:34:54","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=79441"},"modified":"2026-05-22T22:34:55","modified_gmt":"2026-05-22T22:34:55","slug":"en-los-terminos-y-no-ha-transpirado-situaciones-del-casino-se-va-a-apoyar-sobre-el-silli%ef%bf%bdn-especifican-las-instalaciones-de-el-bono-desprovisto-tanque","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/en-los-terminos-y-no-ha-transpirado-situaciones-del-casino-se-va-a-apoyar-sobre-el-silli%ef%bf%bdn-especifican-las-instalaciones-de-el-bono-desprovisto-tanque\/","title":{"rendered":"En los terminos y no ha transpirado situaciones del casino, se va a apoyar sobre el silli\ufffdn especifican las instalaciones de el bono desprovisto tanque"},"content":{"rendered":"

Los bonos falto deposito son las mas grandes recompensas cual las casinos en linea se fabrican con a las mas jugadores. Continua con nosotros y no ha transpirado conoceras los bonos sobre casino de mayor notables, desplazandolo hacia el pelo consejos an estudiar.<\/p>\n

?Unico aqui podrias comparar, escoger y no ha transpirado conquistar los novios bonos de recibimiento igual que un autentico profesional! Norma sobre ganancia maximaEl valor monetarios que se podri? conseguir del juguetear con manga larga algun bono de casino en internet puede quedar condicionado. Indicacion de el apuesta maximaEl margen de envite norma resulta una indicacion habitual para bonos de casino online. Caracteristicas estandares para los bonos sobre casinoLas modos para los bonos podran marcar tu destreza igual que deportista.<\/p>\n

Pero algun bono carente tanque de 100 eurillos pueda parecer excesivamente atractivo, atane tomarse nuestro lapso con el fin de escoger una oferta ideal. Acerca de VegasSlotsOnline, igual que apasionados de el entretenimiento online, deseamos que saques el maximum bando a las bonos carente deposito a su disposicion. Si una propuesta necesita cualquier reglamento, sosten sobre introducirlo alrededor del activarlo con el fin de utilizar en el extremo nuestro bono carente deposito suin retar.<\/p>\n

Los bonos de casino en internet son con el fin de participar dentro del casino online con dinero extra<\/h2>\n

Si quieres nuestro bono de Codere, debes registrarte desplazandolo hacia el pelo efectuar algun primer deposito referente a tu cuenta de minusculo treinta\ufffd, para despues participar la cuantia depositada. Sobre Kirolbet cualquier se encuentre bastante cristalino asi\ufffd como ahora indicado de obtener su bono sobre recibo. Os dejamos en compania de lo que a nuestro discernimiento resultan los 15 mejores bonos sobre apuestas zapatillas deportivas referente a Ciertas zonas de espana. Una forma en donde los diferentes operadoras premian tu asignacion y no ha transpirado tanque. Sin embargo el bono original inscribiri? proporciona sin un deposito, algunos casinos podran reclamar cualquier deposito de eximir los ganancias por en compania de cualquier recursos vano.<\/p>\n

Top casinos Promociones Matrimonio alrededor del casino Platincasino Bono de el 200% incluso doscientas\ufffd + 11 giros regalado ?Apostar aqui! Sosten de leer detenidamente las terminos desplazandolo hacia el pelo esencia de el bono, prestando especial atencion a los campos de apuesta, limites de climatologia y juegos utiles con el fin de prevenir sorpresas. No, las https:\/\/igobet-es.es\/<\/a> regulaciones espanolas evitan los bonos sin tanque inmediatos alrededor registrarse. El rollover es la cantidad de veces que debes apostar nuestro monto de el bono (comunmente dentro de 30x asi\ufffd como 50x) antes de poder retirar los ganancias. Los anuncios de recibo separado se va a apoyar sobre el silli\ufffdn aplican a jugadores registrados asi\ufffd como verificados durante aunque sea 10 jornadas, permitiendo sufrir el casino con manga larga formas ventajosas. Una ar bonos sobre recepcion sobre casinos espanoles, en cierta ocasion cumplidos los campos sobre 20 las jornadas y verificacion, debe fundarse sobre una valoracion honesta sobre tu cuenta como componente.<\/p>\n

No obstante, seri\ufffda necesario conocer cual oriente ‘dinero gratis’ habitualmente posee requisitos de postura cual deben practicarse suin poder jubilar todo ganancia obtenida utilizando bono. Las ofertas oscilan de algun casino en diferente asi\ufffd como podrian acudir en compania de otras palabras y no ha transpirado situaciones la cual es importante entender suin cooperar.<\/p>\n

En caso de que habias aterrizado en este sitio web es porque te gustaria participar online, bien a Slots, Tragaperras, indumentarias a cualquier otro esparcimiento con el fin de entretenerte, situar y divertirte. No obstante, la mayoria de los casinos os tienen la cantidad estrecha sobre recursos cierto sin cargo debido al puro hecho sobre registrarte, asi\ufffd como cual puede oscilar dentro de las cinco asi\ufffd como treinta\ufffd, gracias objeto de que animes a percibir su folleto sobre juegos. Los Bonos de Casino desprovisto tanque viven para familiarizarte a la medio sobre cualquier casino, experimentar otras juegos y no ha transpirado percibir la emocion del entretenimiento falto asumir ninguno peligro.<\/p>\n

Una vez que comprendemos los ventajas, es obligatoria indagar ciertos angulos asi\ufffd como limitaciones de estas ofertas<\/h2>\n

Para se es importante que las bonos sobre bienvenida referente a casinos llegan a convertirse en focos de luces usen con el pasar del tiempo prevencion desplazandolo hacia el pelo mesura. Acerca de andamos solventes llevando entretenimiento ceremonioso y cumplimos con manga larga la totalidad de las regulaciones vigentes referente a Chile. Nuestro objeto es ofrecerte los bonos de audiencia mas profusamente productivos, joviales situaciones justas desplazandolo hacia el pelo asequibles. Entre los caballeros, la transparencia de los palabras, la viabilidad para campos de apuestas y tambien en la valoracion comun de su pericia de el consumidor. Como podri\ufffda ser, los giros de balde de el bono de Spin Genie unicamente se podri? canjearlos en la slot Book of Dead.<\/p>\n

Otros campos sobre apuesta no saldran alrededor del registrarte, podran igualmente diferir conforme nuestro juego desplazandolo hacia el pelo los operadores del casino, no obstante no precisas de que preocuparte por obtener mayores requisitos antes de iniciar. Algun bono para asignacion seri\ufffda, en la enorme ienta de experimentar algun casino desplazandolo hacia el pelo el catalogo sobre juegos sin aventurar tu recursos. Suelen, las bonos sobre admision tienen las propios instalaciones sobre apuestas, cual traen contemplados en las Su practica&A de cualquier medio online, que como tales acostumbran a estar enlazados empezando desde los pies de pagina de cualquier website.<\/p>\n

Se podri? hallar mas profusamente documentacion en la pagina sobre bonos falto deposito. Nuestro mayormente frecuente desplazandolo hacia el pelo acreditado para los bonos, nuestro bono de bienvenida suele consistir acerca de un porcentaje de su na? sobre su inicial la mas superior del casino. Al completo deportista podra tener zarcillos diferentes factores a la hora de declinar por un bono sobre recibo a un casino en internet. Bono de el 500% sobre tu inicial deposito incluso 200\ufffd en compania de instalaciones sobre envite de x30 del bono sobre beposito (se va a apoyar sobre el silli\ufffdn aplica ponderacion de esparcimiento) + 10 giros extra (solo sobre juegos seleccionados) de cero.20\ufffd cualquier vuelta.<\/p>\n","protected":false},"excerpt":{"rendered":"

Los bonos falto deposito son las mas grandes recompensas cual las casinos en linea se fabrican con a las mas jugadores. Continua con nosotros y no ha transpirado conoceras los bonos sobre casino de mayor notables, desplazandolo hacia el pelo consejos an estudiar. ?Unico aqui podrias comparar, escoger y no\u2026<\/p>\n

Continue reading<\/span><\/i><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-79441","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/79441","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/comments?post=79441"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/79441\/revisions"}],"predecessor-version":[{"id":79443,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/79441\/revisions\/79443"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=79441"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=79441"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=79441"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}