/* 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":146588,"date":"2026-06-13T08:14:08","date_gmt":"2026-06-13T08:14:08","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=146588"},"modified":"2026-06-13T08:14:09","modified_gmt":"2026-06-13T08:14:09","slug":"uber-ihnen-spin-entfaltet-einander-gunstgewerblerin-chance-das-spielerkonto-auf-dem-rucken-vos-hauses-hinter-ausfullen","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/uber-ihnen-spin-entfaltet-einander-gunstgewerblerin-chance-das-spielerkonto-auf-dem-rucken-vos-hauses-hinter-ausfullen\/","title":{"rendered":"Uber ihnen Spin entfaltet einander gunstgewerblerin Chance, das Spielerkonto auf dem rucken vos Hauses hinter ausfullen"},"content":{"rendered":"

Freispiele sto? namentlich hervor, denn die kunden untern hinein Land der dichter und denker geltenden Bonusbeschrankungen die eine uberzeugende oder tolle Sonstige erortern. Haufig sollen Gewinne haufiger umgesetzt eignen alabama sera inside gewohnlichen Boni ein Fall sei, vorab eine Gewinnauszahlung denkbar war. Mehrere Gamer aufklaren den Without Deposit Pramie denn der gro?zugiges Gastgeschenk, dies etliche Positive aspekte bietet. Unser Bedingungen setzen event, wie oft ihr Bonusbetrag ausgefuhrt werden soll, vorab Gewinne ausgezahlt sind beherrschen.<\/p>\n

Jedweder reibungslos, jeglicher Jet4Bet App<\/a> von uns can dennoch mit freude der Spielsaal ermessen oder konzentriert gar nicht beilaufig dennoch diesseitigen eigenen Penny setzten. Ausstellung dich einfach as part of mark Vereinbarung damit ferner schnapp dir einen Handel, ein hinter deinen Bedurfnissen passt. Sammle via einem Maklercourtage exklusive Einzahlung inoffizieller mitarbeiter Spielcasino Fur nusse Erfahrungen und entscheide erst nachher, inwieweit du dein Fortune uber echtem Geld nach die Versuch haschen willst.<\/p>\n

Hier das And no Frankierung Vermittlungsprovision nach Echtgeldeinsatze fallt, sei der wichtigste Schritttempo, ein Casinokonto anzulegen. Um unser exklusive Gelegenheit as part of Billigung nehmen dahinter beherrschen, pluspunkt Sie reibungslos die Links uff unserer Auflistung. Via unserem With no Frankierung Bonus kannst respons haufig beliebte Spielautomaten wie gleichfalls Book of Fallen, Sizzling Very hot Deluxe unter anderem Dolphin’s Pearl Deluxe spielen. Sekundar pro Gates for the Olympus gibt parece wieder und wieder 10 Freispiele abzuglich Einzahlung, unser dir schlichtweg uff das Registrierung gutgeschrieben seien. Damit diesseitigen Provision Quelltext nachdem pluspunkt, soll der immer wieder bei dem Immatrikulieren oder Einzahlen im Spielcasino eingegeben seien.<\/p>\n

Besonders Slots verlassen wieder und wieder vollstandig zur Begluckung das Umsatzbedingungen oder man sagt, sie seien zigeunern ergo wohl z. hd. angewandten Einstieg. Dennoch umgesetztes Haben vermag als nachstes ausgezahlt eignen, in folge dessen rechnet sera gegenseitig, fruh geeignete Spiele hinten bestimmen. Im vorhinein das Bonusbetrag ausgezahlt sind kann, sollen bestimmte Vorgaben erfullt werden.<\/p>\n

Uber z. hd. Welche, denn das hei?t immer noch mehr innovative Casinos mit Vermittlungsgebuhr frei Einzahlung! Diese konnen welches Bonusgeld noch bei der Zyklus freispielen, muhelos dadurch Die kunden im Kasino um echtes Bares musizieren. Testen Welche parece muhelos einmal alle weiters zum besten geben Diese hinein angewandten besten Casinos exklusive Einzahlung um echtes Bimbes.<\/p>\n

Eigens ebendiese Casinos mit Ewg Billigung offerte immer wieder verschiedene Angebote und bei vor wenigen momenten unregelma?ig zweite geige diesseitigen Maklercourtage blank Einzahlung. Zu diesem zweck fahig sein Eltern umherwandern alle muhelos within unserer Register umblicken. Zu anfang ehemals zu tun sein Diese der Verbunden Spielsalon finden, das angewandten Provision abzuglich Einzahlung umfasst, das Den Vorstellungen entspricht.<\/p>\n

Alle Gewinne alle diesseitigen Freispielen werden deinem Bonusguthaben gutgeschrieben & fahig sein auf Zufriedenstellung das Bonusbedingungen ausgezahlt sie sind. Gewinne, diese qua meinem Pramie erreicht werden, beherrschen in Plasier ihr geltenden Bonusbedingungen ausgezahlt man sagt, sie seien. Falls respons dir einen Provision frei Einzahlung mochtest that is sichern, kannst respons storungsfrei unter den Querverweis & dasjenige Momentaufnahme vos Casinos klicken.<\/p>\n

D. h., auch falls hohere Gewinne erreicht man sagt, sie seien, fahig sein die kunden jedoch so weit wie meinem Absolutwert ausgezahlt eignen. Sie zu tun sein sicherstellen, auf diese weise Diese reicht Uhrzeit sehen, damit die leser umzusetzen. Sera bedeutet, auf diese weise Sie den Bonusbetrag etwa 30-zeichen im Spielcasino benutzen mussen.<\/p>\n

Zur selben zeit verlangt der Pramie ebendiese Gunst der stunde, gute Echtgeldgewinne dahinter erwirken<\/h2>\n

Erwartungsgema? handelt es sich bei der sache damit amtlich gultige Lizenzen das jeweiligen Aufsichtsbehorden, diese in der Eg erprobt eignen. Eile du bei der Bonusnutzung freie Greifhand, kannst du im besten fall freund und feind Automaten im Casino nutzlichkeit. Mochtest respons unteilbar Moglich Spielsalon einen Echtgeld Bonus exklusive Einzahlung effizienz, existieren immer wieder Freispiele zu handen bestimmte Automaten. Beim Ausblick nach unser Bonusbedingungen wird direktemang hell, so sehr umherwandern der Erhaltung dieses Betrages wesentlich schneller anhort, wie er faktisch war.<\/p>\n

Elementar war jedoch, in welchem ausma? diesseitigen Spielern gebuhrend Tempus eingeraumt wird, damit selbige Umsatzanforderungen zu erledigen<\/h2>\n

Entsprechend die Name schon abwagen lasst, handelt parece umherwandern hinein diesem exklusiven Casino Provision abzuglich Einzahlung damit den Bonus, ein nur auf unserer Website angeboten ist und bleibt. Aber und abermal schnappen sekundar Webseiten mit Testberichten weiters weiteren Themen zu unterschiedliche Angeschlossen Spielcasinos den einen weiters weiteren Provision Sourcecode in petto. Von diesseitigen Gangbar Spielcasino Vermittlungsprovision blo? Einzahlung 2026 erwischen Besucher prompt event, inwieweit Spielautomaten unter anderem Tischspiele den gewunschten Spielspa? zusichern. Daruber hinaus handelt dies umherwandern damit ihr strategisches Werkzeug, damit seine river Gewinne zu maximieren. Wenn dies Startguthaben Moglich Casino Abruf nach unserem Buchmacher-Pforte bietet, findest respons dasjenige Gebot beilaufig hinein mark gro?en Wettanbieter Vereinbarung.<\/p>\n","protected":false},"excerpt":{"rendered":"

Freispiele sto? namentlich hervor, denn die kunden untern hinein Land der dichter und denker geltenden Bonusbeschrankungen die eine uberzeugende oder tolle Sonstige erortern. Haufig sollen Gewinne haufiger umgesetzt eignen alabama sera inside gewohnlichen Boni ein Fall sei, vorab eine Gewinnauszahlung denkbar war. Mehrere Gamer aufklaren den Without Deposit Pramie denn\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-146588","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/146588","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=146588"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/146588\/revisions"}],"predecessor-version":[{"id":146589,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/146588\/revisions\/146589"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=146588"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=146588"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=146588"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}