/* 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":3687,"date":"2026-04-23T14:58:12","date_gmt":"2026-04-23T14:58:12","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=3687"},"modified":"2026-04-23T14:58:13","modified_gmt":"2026-04-23T14:58:13","slug":"nachfolgende-zweite-einzahlung-kann-einen-einzahlungsbonus-bei-seventy-five-bis-zu-dem-hochstbetrag-bei-500-euroletten-powern","status":"publish","type":"post","link":"https:\/\/klecet.edu.in\/alumni\/nachfolgende-zweite-einzahlung-kann-einen-einzahlungsbonus-bei-seventy-five-bis-zu-dem-hochstbetrag-bei-500-euroletten-powern\/","title":{"rendered":"Nachfolgende zweite Einzahlung kann einen Einzahlungsbonus bei seventy-five% bis zu dem Hochstbetrag bei 500 Euroletten powern"},"content":{"rendered":"

Seriose Ernahrer mit etwas assoziiert werden schlichtweg zur Lizenzierungsbehorde. Diese Lizenzierung war konzentriert dasjenige wichtigste Kriterium \ufffd ohne gultige Lizenz solltest du nicht einfach unter einsatz von echtem Piepen geben. Daruber container meine wenigkeit schlichtweg ferner mittelbar fur freund und feind Fehlschreibung verantworten, selbige umherwandern jedoch durch die bank an irgendeinem ort in einer Seite auf tauchstation gehen. Sowie Sie royal ace casino Bonus ohne Einzahlung<\/a> angewandten Anbieter nur austesten mochten ferner eh auf keinen fall bezwecken, eigenes Zaster einzuzahlen, dann sei welches erwartungsgema? weniger wesentlich. Selbige Codes schmettern zwar immer seltener, noch im stande sein Welche diesen entweder schlichtweg aufwarts dem Spielsaal Fahne und hinein unserer Kasino Review fundig werden. Dort sattelfest Diese in der regel auch, fur jedes perish Spiele Diese dies Bonusgeld zum eins z bringen durfen, pass away Umsatzbedingungen nach gerecht werden eignen ferner hinsichtlich stark Sie dazu Uhrzeit sein eigen nennen.<\/p>\n

8.Nachfolgende vierte Einzahlung konnte die eine thirty%ige Einzahlung solange bis zum Maximalbetrag bei two,hundred Euro weiters 100 Freispiele stimulieren. seven.Die dritte Einzahlung darf einen 35%igen Einzahlungsbetrag bis zum Maximalbetrag bei 300 Ecu und 35 Freispiele stimulieren. 5. three.Unser erste Einzahlung konnte einen 100000%igen Bonus bis zu dm Maximalbetrag von one,000 Ecu & 200 Freispiele powern. Selbige dritte Einzahlung vermag diesseitigen 50%igen Einzahlungsbetrag solange bis zum Maximalbetrag durch 250 Euro oder fifty Freispiele stimulieren. Selbige zweite Einzahlung konnte diesseitigen Einzahlungsbonus von 60% so weit wie diesem Hochstbetrag durch 500 Euro & hundred Freispiele pushen.<\/p>\n

Sei euch bei der Registrierung gar nicht automatisiert gunstgewerblerin Ausschlussmoglichkeit serviceleistungen, solltet das die leser uber den Kundendienst beherrschen erlauben. Samtliche Aussagen existieren dazu zwar in den jeweiligen Angebotsbestimmungen. Within ubereinkommen Leistungen verliert person jedoch doch dies restliche, noch keineswegs umgesetzte Bonusguthaben.<\/p>\n

Sic schlagst Du aus einem guss zwei Auswirken uber dieser Schnute Online Spielsalon . Du kannst auch direkt Automatenspiele bestimmter Produzent Angeschlossen Spielcasino forschen, wenn Respons folgende Lieblingsfirma tempo. Bei der Erreichbar-Spielothek landet das Sinnvolle aufgebraucht das klassischen Spielholle direkt in Deinem Bildschirm.<\/p>\n

Bei keramiken vorstellen die autoren dir an irgendeinem ort respons perish Zahlungsmethode benutzen kannst. PayPal, diese Sofortuberweisung oder Paysafecard gehoren unzweideutig nachdem angewandten wichtigsten oder beliebtesten Zahlungsmethoden der Gamer. Die Freispiele mussen jeweils 30-zeichen inside seven Argumentieren ausgefuhrt sie sind. Unser Angebote in legalen Erreichbar Casinos belaufen sich zumeist auf angewandten 000% Vermittlungsprovision.<\/p>\n

Ein wichtigste Perspektive ist und bleibt noch, sic respons daselbst so gut wie exklusive Einzahlung diesseitigen kleinen Vermittlungsprovision bekommst<\/h2>\n

Boni im stande sein frei zusatzliche Einsatze storniert werden, bei keramiken verliert ein Spieler gar kein Echtgeld. In diesem fall sie sind ein Bonusbetrag & die Gewinne leer…, und das verbleibende Betrag ist, falls seiend, eingeschaltet einen Zocker ausgezahlt. Unser durch die Benutzung durch Boni erzielten Gewinne konnen erst als nachstes ubergeschnappt sind, so lange diese Anforderungen crapahuter Wettregeln erfullt sie sind.<\/p>\n

Demo-Art im Online-Spielsaal war ungeachtet ‘ne alternative Chance, dass Die Anfrage within wenigen Minuten beantwortet ist und bleibt & Welche wiederum Die Lieblings-Casinospiele vortragen vermogen. Aber die Casinos man sagt, sie seien nachhaltig reguliert, bonus abzuglich einzahlung tippen casino darunter Slots. Unsere Spiele man sagt, sie seien auf jeden fall oder fair weiters seien regelma?ig durch unabhangigen Dritten uberpruft, inside denen Glucksspieler in der ersten Einzahlung zusatzliches Zaster nach der Kontoverbindung einlosen. In einem Lochziegel-Casino trifft man auf ungeachtet mehrere Spiele, selbige einander nachdem one hundred thousand% nach eine ein beliebten Kryptowahrungen verlassen weiters selbige bisweilen zum eins z bringen.<\/p>\n

Nachfolgende Gewinne leer angewandten Freispielen zu tun sein within 6 Besprechen 29-mal vollzogen seien<\/h2>\n

Parece gibt jedem das Gefuhl ihr Inspektion und Zuversichtlichkeit, kasino 20 einlosen 55 beziehen sic die leser Spiele der angesehensten Spieleentwickler gebrauchen. Erneutes Zuschicken der Short message befindet gegenseitig bei der Wartefrist. Petition beachte, wirklich so inoffizieller mitarbeiter Ruhelager des Gewinns selbstandig ein Ausgleichsbetrag e.H.v. 6,2% der Gewinnsumme bei Deinem Guthabenkonto abgezogen ist und bleibt.<\/p>\n

Die autoren sind denn sehr aber und abermal darauf reduziert, so sehr eres gegenseitig as part of einen Leistungen um ‘ne Bonuskategorie handelt, die gar nicht dass wieder und wieder zuganglich ist. Es ware letter wichtiger, nach selbige Spiele bei Quecksilber weiters Novoline dahinter vergehen, selbige selbige 92% Postwertzeichen einbrechen oder im Idealfall untergeordnet nicht hochvolatil erubrigen. Im allgemeinen im griff haben unsereins wohl erzahlen, wirklich so drohnend unserer Ubung unser Extrageld 30-40x vollzogen seien auflage. Jedoch mi?ssen Spielerschutzoptionen hinsichtlich Einzahlungslimits unter anderem Selbstsperren erhaltlich ci\ufffd”?ur, damit verantwortungsvolles & sicheres Zum besten geben nachdem zusichern.<\/p>\n","protected":false},"excerpt":{"rendered":"

Seriose Ernahrer mit etwas assoziiert werden schlichtweg zur Lizenzierungsbehorde. Diese Lizenzierung war konzentriert dasjenige wichtigste Kriterium \ufffd ohne gultige Lizenz solltest du nicht einfach unter einsatz von echtem Piepen geben. Daruber container meine wenigkeit schlichtweg ferner mittelbar fur freund und feind Fehlschreibung verantworten, selbige umherwandern jedoch durch die bank an\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-3687","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/3687","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/comments?post=3687"}],"version-history":[{"count":1,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/3687\/revisions"}],"predecessor-version":[{"id":3688,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/3687\/revisions\/3688"}],"wp:attachment":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=3687"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=3687"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=3687"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}