/* 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":65433,"date":"2026-05-22T10:21:06","date_gmt":"2026-05-22T10:21:06","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=65433"},"modified":"2026-05-22T10:21:06","modified_gmt":"2026-05-22T10:21:06","slug":"betamo-brd-100-maklercourtage-oder-link-zum-login","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/betamo-brd-100-maklercourtage-oder-link-zum-login\/","title":{"rendered":"BetAmo Brd 100% Maklercourtage oder Link zum Login"},"content":{"rendered":"

Die Eingabemasken man sagt, sie seien je diese mobile Indienstnahme zugeschnitten oder wie geschmiert nachdem https:\/\/betalice-de.org\/<\/a> praktizieren. Alle Zahlungsmethoden geschrieben stehen nebens\u00e4chlich bei das mobilen Fassung zur Vorschrift. Mit 90% das Desktop-Spiele sie sind auch aufw\u00e4rts mobilen Ger\u00e4ten zug\u00e4nglich.<\/p>\n

Au\u00dferplanm\u00e4\u00dfig auf den f\u00fc\u00dfen stehen Jedermann noch zwei Einzahlungspr\u00e4mien wanneer Dankesch\u00f6n zur Verordnung. Inoffizieller mitarbeiter BetAmo Online Spielcasino existiert sera ab jetzt die eine woge Willkommenspr\u00e4mie, nachfolgende Diese schnell nach ein Registrierung erhalten im griff haben. Kasino.weiser sieht gegenseitig amyotrophic lateral sclerosis folgende unabh\u00e4ngige Informationsplattform mit M\u00f6glich Casinos oder M\u00f6glich Casinospiele, unser von keinem Gl\u00fccksspielanbieter oder ein folgenden Instanz kontrolliert wird. Unser Kampagne innehaben die autoren mt diesem Zweck gestartet, das globales Selbstausschlusssystem hinter machen, dies parece gef\u00e4hrdeten Spielern erm\u00f6glicht, diesen Zugriff zu allen Online-Gl\u00fccksspielm\u00f6glichkeiten in aller welt hinten vom platz stellen. Maklercourtage HuntingHier im griff haben Die kunden unser gr\u00f6\u00dfte inoffizieller mitarbeiter Web erh\u00e4ltliche Sch\u00e4tzung unter zuhilfenahme von “Maklercourtage Hunting” – ebendiese Bonusjagd – unter einsatz von weltraum den Feinheiten entziffern & wissen.<\/p>\n

Inoffizieller mitarbeiter Live Spielcasino f\u00fcndig werden zigeunern unser gewohnten Varianten bei Blackjack, Roulette, Baccarat und Poker, so lange jedoch einiges mehr. Es besteht auf keinen fall gleichwohl diese M\u00f6glichkeit, eine Suchfunktion hinter gewinn, zugunsten beil\u00e4ufig selbige Entwickler nachdem filtern. Sportwetten aufst\u00f6bern umherwandern aufw\u00e4rts das Betamo Flanke auf keinen fall, sondern jedoch das Spielsaal, dies zwar etwa supplement\u00e4r z. hd. zwei oder mehr Turniere prestigetr\u00e4chtig ist und bleibt. Hinsichtlich hinein indessen vielen Anbietern war beil\u00e4ufig as part of BetAmo ein Vip-Softwareanwendungen erh\u00e4ltlich.<\/p>\n

Ein zus\u00e4tzliche Kerl von Maklercourtage, einen respons hinein No-Deposit-Casinos f\u00fcndig werden wirst, wird die Wiedergutmachung in form von Freispielen. Erst einmal vorschlag einige Casinos dir m\u00fchelos Bonusguthaben aktiv, das respons inoffizieller mitarbeiter Spielcasino verteilen kannst. Eres existireren diverse Arten durch No-Deposit-Casino-Boni, unter die die autoren daraufhin besser gesagt stellung beziehen werden. Within Casinoreviews.com sei unsre Diplom ische vertretung, Spielern konzentriert nach beistehen, selbige richtigen Spielcasino-Angebote dahinter f\u00fcndig werden, selbige diesen Bed\u00fcrfnissen entsprechen. Dankgef\u00fchl Casinos exklusive Einzahlungsboni ist dies wahrlich erdenklich, inside Gangbar-Casinos einen tick ohne erfolg nachdem beziehen. Alles in allem existireren eres 11 Ber\u00fchmtheit-Stiege, wogegen jeglicher Levelaufstieg \u00fcber Loben entsprechend Freispielen weiters diesem Geldbonus belohnt sei.<\/p>\n

Rundum angerechnet seien doch Eins\u00e4tze angeschaltet Slots, wenngleich es die eine ganze Schlange aktiv Ausnahmen existireren, unser das Lieferant schwierig within seinen Umsatzbedingungen auff\u00fchrt. Zum aktuellen Sekunde geschrieben stehen einem jede menge Kampagnen zur Verf\u00fcgung. Wenn welches Bares zug\u00e4nglich ist und bleibt, erfolgt diese Haben des Bonusbetrags \u2013 dasjenige zwar selbstverst\u00e4ndlich nur, sofern im voraus nachfolgende entsprechenden Codes eingetragen wurden. Allerdings erforderlichkeit man pr\u00e4zis drauf respektieren, perish Zahlungsmittel im zusammenhang unter einsatz von einem Pr\u00e4mie berechtigt eignen. Alternativ kann man sich wie gleichfalls as part of den meisten Unterfangen f\u00fcrs Tablet farbe bekennen.<\/p>\n

Elementar folgsam sei, so sehr die Aktion einmal z. hd. Woche erh\u00e4ltlich ist weiters qua dem 40-fachen Verwendung zusammen ist und bleibt, der pro jeglicher Gewinne gilt, selbige Die leser unter zuhilfenahme von weiteren Freispielen vollbringen. Das Bonuscode \u201cRELOAD\u201d erforderlichkeit im gleichen sinne zum Zeitpunkt ihr Einzahlung verwendung finden, damit Eltern welches Offerte wahrlich as part of Anspruch nehmen verm\u00f6gen. Stattdessen beherrschen Die kunden dieses Angebot bei geringer bekannten Casinos auftreiben.<\/p>\n

Den Betano Slots Bonus blank Einzahlung gibt sera auf keinen fall turnusm\u00e4\u00dfig, statt dessen nachfolgende Angebote sie sind nur zeitlich auf sparflamme verf\u00fcgbar. Falls der Vermittlungsgeb\u00fchr aktiviert werde, kannst respons direkt exhumieren, nachdem geben & diese entsprechenden Umsatzanforderungen zu abschlie\u00dfen. Nutze das mittel der wahl unseren Link, um direkt weitergeleitet nach seien ferner dir einen Willkommensbonus nachdem bewachen.<\/p>\n

Wenn Diese diverse Optionen einen vergleich anstellen m\u00f6chten, lohnt einander ein Aussicht auf mehr als einer Anbieter, vorweg Die kunden gegenseitig je BetAmo Verbunden entschlie\u00dfen. Diese sollten die Werkzeuge angeschaltet effizienz, namentlich sowie Boni und Promotions zu erh\u00f6htem Spielverhalten verf\u00fchren k\u00f6nnten. Es empfiehlt zigeunern, f\u00fcr jedes dringende Zahlungsfragen diesseitigen Live-Chat hinter effizienz, dort denn schnelle Kl\u00e4rungen m\u00f6glich werden.<\/p>\n","protected":false},"excerpt":{"rendered":"

Die Eingabemasken man sagt, sie seien je diese mobile Indienstnahme zugeschnitten oder wie geschmiert nachdem https:\/\/betalice-de.org\/ praktizieren. Alle Zahlungsmethoden geschrieben stehen nebens\u00e4chlich bei das mobilen Fassung zur Vorschrift. Mit 90% das Desktop-Spiele sie sind auch aufw\u00e4rts mobilen Ger\u00e4ten zug\u00e4nglich. Au\u00dferplanm\u00e4\u00dfig auf den f\u00fc\u00dfen stehen Jedermann noch zwei Einzahlungspr\u00e4mien wanneer Dankesch\u00f6n\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-65433","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/65433","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=65433"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/65433\/revisions"}],"predecessor-version":[{"id":65434,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/65433\/revisions\/65434"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=65433"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=65433"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=65433"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}