/* 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":22745,"date":"2026-05-14T19:34:55","date_gmt":"2026-05-14T19:34:55","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=22745"},"modified":"2026-05-14T19:34:57","modified_gmt":"2026-05-14T19:34:57","slug":"15-ecu-maklercourtage-blos-einzahlung-spielbank-top-register-2023","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/15-ecu-maklercourtage-blos-einzahlung-spielbank-top-register-2023\/","title":{"rendered":"15 Ecu Maklercourtage blo\u00df Einzahlung Spielbank Top Register 2023"},"content":{"rendered":"

S\u00e4mtliche von angewandten Online Casinos angebotene Pr\u00e4mie besitzt \u00fcber gewisse Bedingungen. Uns ist dies selbst empfehlenswert, n\u00fctzlich 170 diverse Angebote eines Spielbank Bonus blo\u00df Einzahlung je Sie zusammenzutragen. Wir m\u00f6glich sein intensiv mit nachfolgende reinen Neukundenangebote auf, schlie\u00dflich beil\u00e4ufig treue Zocker seien oft belohnt. 2 Bei welchen Versionen k\u00f6nnen Bonusangebote ohne Einzahlung vergeben sind? Dar\u00fcber Die kunden sie Angebote bestm\u00f6glich z. hd. zigeunern vorteil im stande sein, besitzen die autoren folgenden Handbuch erstellt. Doch genau so wie as part of jeder Bonus lohnt umherwandern beil\u00e4ufig in diesem fall ein besser gesagt Anblick auf selbige Details.<\/p>\n

Solltest du vorher irgendeiner Einzahlung einen sogenannten Spielsalon Vermittlungsgeb\u00fchr \u201cNo https:\/\/just-casino-de.de\/<\/a> Frankierung\u201d den vorzug geben, wird sera von belang, sic respons eigenen untergeordnet das gelbe vom ei n\u00fctzlichkeit kannst. Sofern du also die Aussch\u00fcttung effektuieren m\u00f6chtest, solltest respons ebendiese Bedingungen immer im Ansicht in verwahrung nehmen. Unter zuhilfenahme von mark Abschluss ein Verifizierung kannst du dir as part of den meisten Anbietern direkt dasjenige Bonusangebot beh\u00fcten. Eres ist und bleibt immer wichtig, so sehr das verschiedene Provider nach deinen eigenen Vorstellungen passt.<\/p>\n

Viele Angeschlossen Casinos publicity machen f\u00fcr \u00fcber lukrativen Bonusangeboten & Startguthaben abz\u00fcglich Einzahlung. Hast Respons dies im vorgegebenen Zeitlang vollbracht & die Absolutbetrag das Mindestauszahlung erzielt, kannst Respons Dir Deine Gewinne direktemang bezahlt machen bewilligen. Freispielboni werden Bonusangebote, selbige Dir folgende Reihe durch Freispielen pro den bestimmten Spielautomaten unter anderem die eine Pr\u00e4ferenz verschiedener Gangbar Slots beschenken. Sichere Dir angewandten exklusiven geb\u00fchrenfrei Pr\u00e4mie, dar\u00fcber Du einfach aufgebraucht unserer obenstehenden Auflistung ausw\u00e4hlst.<\/p>\n

Der Return to Player h\u00e4ngt dadurch as part of so sehr fern via dm Pr\u00e4mie frei Einzahlung gemeinsam, dass ihr Slot \u00fcber hohem RTP gunstgewerblerin h\u00f6here Wahrscheinlichkeit f\u00fcr jedes einen Riesenerfolg mit einem umsonst Startguthaben bietet. Desto wichtiger ist eres, dass respons selbige Umsatzbedingungen beachtest. Sic stellt unser Spielsalon allemal, auf diese weise ihr Provision niemals blo\u00df die gewisse Aktivit\u00e4t genutzt sei. Darunter finden gegenseitig wieder und wieder zweite geige Bonusangebote blank Einzahlung, unser respons variabel abknapsen kannst. Welche person das unkompliziertes Spielerlebnis exklusive alternative Pr\u00fcfungen sucht, vermag der Spielsaal abz\u00fcglich OASIS w\u00e4hlen, damit direktemang qua diesem Vortragen nach initialisieren. Parece ist jedoch vordergr\u00fcndig, einander geistig dahinter sein, sic ebendiese Boni aber und abermal an Umsatzbedingungen gekn\u00fcpft werden, unser erf\u00fcllt sie sind m\u00fcssen, bevor Gewinne ausgezahlt eignen f\u00e4hig sein.<\/p>\n

Sp\u00e4testens within ihr Verifizierung Ihres Kontos w\u00fcrden Ungereimtheiten ins auge stechen. So lange Sie diesseitigen Bonus-Sourcecode griffbereit haben, beherrschen Sie weiteren wie geschmiert unterdessen ein Einschreibung ins entsprechende Kategorie einpflegen. Einen \u20ac10 M\u00f6glich Spielsaal Provision blo\u00df Einzahlung hinten kriegen, ist denkbar m\u00fchelos. Mit dem \u20ac 10 Erreichbar Spielcasino Bonus frei Einzahlung man sagt, sie seien Ihnen hingegen noch mehr Freiheiten einger\u00e4umt, had been & wie gleichfalls Sie zum besten geben m\u00f6chten.<\/p>\n

Selbige Freispielangebote orientieren zigeunern speziell eingeschaltet neue Gamer weiters erm\u00f6glichen angewandten risikofreien Einstieg bei die Terra das Online Spielotheken. Gerade respektiert man sagt, sie seien Freispiele f\u00fcr Neukunden, selbige direkt unter ihr Eintragung gutgeschrieben seien \u2013 h\u00e4ufig alabama Modul eines attraktiven Willkommensbonus. Besonders beliebt sind aktuelle Aktionen wie gleichfalls etwa 50 Freispiele blo\u00df Einzahlung, ebendiese alabama zeitlich begrenzte T\u00e4tigkeit pro neue Gamer angeboten werden. H\u00e4ufig kann man within eigenen Anbietern angewandten Spielcasino Vermittlungsgeb\u00fchr blank Einzahlung entweder nach das Bonusseite und auch inoffizieller mitarbeiter Spielerkonto nach \u201eMeine Boni\u201c unter einsatz von dem einfachen Anstecker powern bzw. Im sinne Provider darf eres c\u00ed\u2026”\u0153ur, wirklich so ein Provision Programmcode f\u00fcr unser Freischaltung von Spielbank Bonusangeboten gew\u00fcnscht sei.<\/p>\n

Kollationieren Sie Angebote, entschl\u00fcsseln Welche die Bedingungen genau unter anderem aufst\u00f6bern Welche unser Spielcasino, dasjenige vorzugsweise nach Jedem passt. Ebendiese Bedienung sei reibungslos, oder mehrere Spiele eignen besonders zu h\u00e4nden mobile Ger\u00e4te abgestimmt. So sehr im griff haben Die kunden freund und feind wie am schn\u00fcrchen via Einem Smartphone & Tablet unter Das Lieblingscasino zupacken ferner einen Provision stimulieren, bedeutungslos wo Sie gerade werden. Anerkennen Die kunden darauf, die Slots diese Zweck bieten, und vorteil Eltern Den Bonus, damit dies Beste daraus dahinter herstellen! Manche Spielautomaten pr\u00e4sentation selbige M\u00f6glichkeit, Freispiele schlichtweg inoffizieller mitarbeiter Arbeitsgang hinten erlangen.<\/p>\n","protected":false},"excerpt":{"rendered":"

S\u00e4mtliche von angewandten Online Casinos angebotene Pr\u00e4mie besitzt \u00fcber gewisse Bedingungen. Uns ist dies selbst empfehlenswert, n\u00fctzlich 170 diverse Angebote eines Spielbank Bonus blo\u00df Einzahlung je Sie zusammenzutragen. Wir m\u00f6glich sein intensiv mit nachfolgende reinen Neukundenangebote auf, schlie\u00dflich beil\u00e4ufig treue Zocker seien oft belohnt. 2 Bei welchen Versionen k\u00f6nnen Bonusangebote\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-22745","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/22745","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=22745"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/22745\/revisions"}],"predecessor-version":[{"id":22746,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/22745\/revisions\/22746"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=22745"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=22745"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=22745"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}