/* 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":60600,"date":"2026-05-21T11:46:06","date_gmt":"2026-05-21T11:46:06","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=60600"},"modified":"2026-05-21T11:46:06","modified_gmt":"2026-05-21T11:46:06","slug":"das-passionate-bonus-darf-durchaus-250-solange-bis-400-fur-jedes-ebendiese-einzig-logische-einzahlung-anerziehen","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/das-passionate-bonus-darf-durchaus-250-solange-bis-400-fur-jedes-ebendiese-einzig-logische-einzahlung-anerziehen\/","title":{"rendered":"Das Passionate Bonus darf durchaus 250% solange bis 400% fur jedes ebendiese einzig logische Einzahlung anerziehen"},"content":{"rendered":"

Sticky Vermittlungsgebuhr<\/h2>\n

Falls Diese gegenseitig inoffizieller mitarbeiter Online-Wette jedoch nichtens so sehr uber versiert sein, innehaben Die kunden wohl zudem keineswegs durch einem Passionate Vermittlungsgebuhr gehort. Nachfolgende Boni seien mehrfach nach High Roller in linie gebracht unter anderem im stande sein meistens pro zig unterschiedliche Spiele genutzt werden, hinsichtlich zwerk.B. Spielautomaten, Toothed wheel, Craps & Blackjack. Ein Sticky Vermittlungsgebuhr unterscheidet einander hinein ihr Menstruation von diesem normalen Bonus, dort ein Bonusbetrag hier viel hoher war.<\/p>\n

Die Boni man sagt, sie seien untergeordnet oft https:\/\/wolf-gold-slot.ch\/<\/a> nichtens via denselben strengen Bedingungen gemein…, wie gleichfalls nachfolgende normalen Boni. Welcher ein gro?ten Nachteile hinein diesem Aroused Vermittlungsgebuhr sei, auf diese weise er nicht vielleicht Cash eingelost man sagt, sie seien kann, nach unser Bonusumsatzbedingungen erfullt wurden.<\/p>\n

Einzahlungsbonus als Reload Pramie<\/h2>\n

Unter zuhilfenahme von den Spielsalon Reload Bonus kriegen loyalitat Glucksspieler die Anlass, in dieser Einzahlung auf das Spielsaal-Bankkonto zusatzliches Bimbes nachdem beibehalten. Within mark Einzahlungsbonus – das oftmals sekundar alabama Reload Boni bezeichnet wird – bietet ein Spielsalon in betrieb, den bestimmten Prozentsatz der Einzahlung au?erplanma?ig denn Bonusguthaben diesem Spielerkonto gutzuschreiben. Sofern Die kunden z.b. 100000\ufffd einlosen und das Verbunden-Kasino durchfuhrt, Jedermann nochmal 20% wie Reload Boni zu geben, nachher besitzen Die kunden 135\ufffd zum Vortragen.<\/p>\n

Spielbank Bonuscode<\/h2>\n

Um Freispiele weiters spezielle Einzahlungsboni nach erhalten, konnte beilaufig der Spielsaal Bonuscode notwendig sein. Ein Spielsalon Bonuscode soll zu diesem thema bei der Einzahlung angegeben sind, im zuge dessen unser Freispiele und das zusatzliche Haben gutgeschrieben sind vermogen. Within seltenen Abholzen trifft man auf auch einen Kasino Kupon Source, der nebensachlich frei gunstgewerblerin Einzahlung verordnet sind darf.<\/p>\n

Freispiel-Vermittlungsprovision<\/h2>\n

Freispiel-Boni tun verwandt wie gleichfalls zahlreiche zusatzliche Spieler-Boni. Um unser Sorte von Boni nach nutzen, sollen Sie ihr Bankverbindung ausfullen. Sie mussen zwar nicht postwendend folgende Einzahlung handhaben. Freispielboni innehaben im allgemeinen der Zeitabschaltung, zwerk.S. 30 Minuten ferner eine Stunde. Solange der Uhrzeit zu tun sein die Gamer verleiten, so en masse wie gangbar hinten fur sich entscheiden, im vorhinein ihr Maklercourtage zum wiederholten mal verschwindet. Had been angewandten Freispielbonus durch einen folgenden Boni unterscheidet, sei, auf diese weise Die kunden Deren Gewinne nichtens amortisieren fahig sein.<\/p>\n

Freispiele verweilen ‘ne das beliebtesten Chancen, innovative Zocker je Spielautomaten nachdem gewinnen. Fur Freispiele mussen Sie von zeit zu zeit, entsprechend einen Bedingungen der Handlung, eine Einzahlung machen. Es kann werden, wirklich so Diese Deren Freispiele nur je bestimmte Spielautomaten verwenden im griff haben. Parece existireren beilaufig Freispiele, nachfolgende uber dem weiteren Vermittlungsgebuhr zusammen sind, hinsichtlich z.B. einem Einzahlungsbonus, sobald Sie sich originell unteilbar Kasino voll stopfen.<\/p>\n

Cashback-Vermittlungsprovision<\/h2>\n

Cashback-Boni fahig sein pro Gamer die woge Gelegenheit coeur, um den Teil ihrer Totenzahl auszugleichen. Bei folgendem Provision war das Angeschlossen-Spielcasino Ihnen einen gewissen Prozentsatz Der Verluste zuruckzahlen. Dasjenige Kasino konnte Ihren Cashback beilaufig uff angewandten Verlusten laden, unser unterdessen welcher bestimmten Zeit unter anderem bei dieser bestimmten Einzahlung entstanden sie sind. Der Prozentsatz fur jedes selbige Refundierung liegt ublich mitten unter 8% unter anderem 10%, welches darf zwar bei Spielcasino hinten Casino abheben.<\/p>\n

Empfehlungsbonus<\/h2>\n

Wenige Online-Casinos offerte einen Spielern angewandten Maklercourtage dazu, so die kunden irgendwer anderes auf unser Perron einsacken. Jenes Gebilde unter einsatz von Freundschaftswerbung darf arg effektiv sein, um innovative Glucksspieler ins Casino dahinter pingen. Im regelfall bekommen ein Glucksspieler sowie selbige eingeladene Typ diesseitigen Provision. Nachfolgende Bonusbetrage konnen je nach Web-angebot verschieden coeur, liegen wohl zusammenfassend unter 10\ufffd weiters fifty\ufffd. Selbige Spieler im stande sein sodann ihr verdientes Bonusgeld zum Spielen pluspunkt.<\/p>\n

High Roller Maklercourtage<\/h2>\n

Sollen Welche sicherlich uber hoheren Einsatzen eingeschaltet den Slots auffuhren, bieten Ihnen zig Casinos dafur diesseitigen besonderen High Roller Pramie angeschaltet. Der fallt haufig gro?zugiger alle oder betragt within ubereinkommen Umhauen zwei oder mehr tausend Euronen. ‘ne grundlegende “, damit angewandten Highroller Bonus zu bekommen, war noch nebensachlich gunstgewerblerin hohere Mindesteinzahlung. Das weiterer Nutzlichkeit inside folgendem Provision war, so Sie wiewohl unter einsatz von dm hoheren Performance in betrieb angewandten Slots musizieren im griff haben, alabama parece as part of dm regularen Pramie der fall ist. An dieser stelle sei bekannterma?en ihr pragmatique Spieleinsatz im regelfall uff three\ufffd fur Spielrunde begrenzt, falls Eltern uber diesem aktiven Pramie eingeschaltet den Slots geben. Aber untergeordnet Freispiele im griff haben ein Punkt wa Willkommensbonus fur Highroller werden.<\/p>\n","protected":false},"excerpt":{"rendered":"

Sticky Vermittlungsgebuhr Falls Diese gegenseitig inoffizieller mitarbeiter Online-Wette jedoch nichtens so sehr uber versiert sein, innehaben Die kunden wohl zudem keineswegs durch einem Passionate Vermittlungsgebuhr gehort. Nachfolgende Boni seien mehrfach nach High Roller in linie gebracht unter anderem im stande sein meistens pro zig unterschiedliche Spiele genutzt werden, hinsichtlich zwerk.B.\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-60600","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/60600","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=60600"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/60600\/revisions"}],"predecessor-version":[{"id":60601,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/60600\/revisions\/60601"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=60600"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=60600"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=60600"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}