/* 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":24261,"date":"2026-05-15T00:17:51","date_gmt":"2026-05-15T00:17:51","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=24261"},"modified":"2026-05-15T00:17:52","modified_gmt":"2026-05-15T00:17:52","slug":"a-number-of-the-canadian-crypto-gambling-enterprises-on-the-greatest-bonuses-become-lucky-take-off-bc","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/a-number-of-the-canadian-crypto-gambling-enterprises-on-the-greatest-bonuses-become-lucky-take-off-bc\/","title":{"rendered":"A number of the Canadian crypto gambling enterprises on the greatest bonuses become Lucky Take off, BC"},"content":{"rendered":"

Games, Vave, Super Dice, and you may TG.Casino. A few of the most well-known crypto playing sites employed by members during the Canada is CoinCasino, Lucky Cut-off, BetNinja, BC.Games and you can Quick Gambling establishment.<\/p>\n

Therefore, you’ll select all kinds of slot online game, desk video game such as black-jack and roulette, and some fun real time dealer game, as well. This may involve from 100 % free spins and money drops so you’re able to each week and you can month-to-month cashback also offers and. Cryptorino are a premier instantaneous payment Bitcoin gambling enterprise, but earnings can sometimes consume to 12 days, according to system congestion.<\/p>\n

To begin making use of the Rakebit platform, you can easily first have to deposit funds to your membership. Skip boring financial transfers – Rakebit is all about crypto, keeping things quick, hassle-100 % free, and you will definitely secure. Wager safely playing with crypto into the prominent football like football, basketball, golf, esports, MMA, and many more! See your preferred local casino enjoy games on the net having crypto – quick places, effortless distributions, and you will lively anonymity integrated! Like perfection more than ordinary – realise why Rakebit Originals is the popular option for secure and you will fulfilling Bitcoin local casino gambling! For each title combines reliability-designed volatility options, real-big date commission logic, and you will high-meaning visuals, getting a streamlined, safe, and very interesting betting sense designed so you’re able to progressive crypto participants, solely inside Rakebit!<\/p>\n

Their quick detachment Bitcoin gambling establishment program was reliable, secure, and you may made to meet with the expectations of U.S. participants seeking to a balance ranging from poker and you can gambling establishment activity. There are various choice, making it challenging to search for the right instantaneous withdrawal Bitcoin local casino. Members love crypto gambling enterprises while they render quick Bitcoin money, enjoyable gaming, and you will unique rewards. Although not, if you undertake a check because of the Courier or Bank Cable, we provide fees anywhere between $forty-five so you’re able to $75 each deal.<\/p>\n

This is an option players renders whenever they imagine the new added bonus possess too much wagering criteria or doesn’t correspond to the variety of games they would like to enjoy. Trust in me, you’re going to get a lot more than the simple has the benefit of you’ll find within the latest gambling enterprise alone. Take into account the betting conditions, the latest game you might gamble, and you may even though you can actually cash-out in place of dropping your face in the process. Here’s how you can change men and women incentive terminology for the a plus instead shedding into the prominent traps. It is far from no more than meeting the fresh wagering criteria or avoiding the omitted online game-it is more about making the very from every bonus.<\/p>\n

It prefer from the headline extra first and see functional problems later<\/h2>\n

Don’t allow you to sloppy choice destroy your chance to cash-out-so, proceed with the maximum, and you’ll be good to go. Because they do not want you setting grand, high-chance wagers if you betpanda casino app<\/a> are functioning through your wagering criteria. Since if you may have your own cardiovascular system seriously interested in a particular games, it may not also be to your added bonus-acknowledged checklist.<\/p>\n

Just deliver the novel bag address whenever asking for the brand new detachment<\/h2>\n

Overseas licensed gambling enterprises will still be prominent due to their aggressive potential, ample invited incentives, and you will greater cryptocurrency assistance. When you find yourself provincially managed solutions occur owing to AGLC, of a lot participants seek out all over the world authorized systems getting a wider video game choice, better bonuses, and versatile payment actions in addition to cryptocurrency. Focusing on how this product functions can help you decide which legitimate online casino is best for you. Bank transmits is actually less frequent for their expanded handling moments (around eight business days), even though they are utilized for large distributions, since they has highest limit restrictions. Crypto gives you the quickest handling moments with immediate dumps and you can distributions within 24 hours, as you should find out your crypto wallet beyond your gambling establishment. You gather points according to the real money bets you make, eventually unlocking the newest levels to have ideal cashback costs, lower wagering conditions, as well as smaller distributions.<\/p>\n

One number requires the next and you will inhibits of a lot avoidable delays. A different sort of universal problem was limitation believed. Vave Gambling establishment shuts of several local best directories while the a blended-regimen option. For folks who search bitcoin gambling establishment, finest bitcoin gambling enterprise, or bitcoin gambling establishment Philippines, this page brings you to basic shortlist. Every names are from your particular brand name number.<\/p>\n

Read our list of demanded BTC casinos on the internet with 100 % free revolves. In addition to, Bitcoin gambling establishment free spins that aren’t tied to a deposit amount possess each other betting conditions and you can a limit on the total winnings you can allege. Particular Bitcoin local casino bonuses want a low 1st put but commonly lay hefty wagering conditions on your own deposit plus the bonus revolves.<\/p>\n

And understanding that, highroller incentives generally speaking provide ample rewards, but they often feature higher wagering standards. Regarding my personal viewpoint, any gambling enterprise extra that is included with betting criteria lower than the newest mediocre 45x endurance qualifies because a decreased betting extra. Such high betting requirements causes it to be hard to meet the full extra small print just before my extra money getting incorrect.<\/p>\n

In addition to, of many internet vendors and services as well as undertake Bitcoin as the commission, and you might never are not able to pick an effective exchange otherwise client for your gold coins. Because the transactions is actually addressed for the blockchain, most of the payout are traceable and you will safer. Participants can choose amounts, tone (red\/black), or areas (odd\/even). Along with 1800 slot games to your out of different team, there are various other templates and you will added bonus has like a free of charge spin and you may multiplier which help you profit good jackpot. SportBet.One to crypto casino has a set of well-known dining table game in order to satisfy your people, that has these gaming choice.<\/p>\n

Clean Gambling establishment are a top-tier crypto-merely online casino featuring more 5,500 video game, worthwhile greeting bonuses around $one,000, and you will instantaneous profits all over 9 popular cryptocurrencies. Along with 8 many years of expertise in the latest crypto betting area, FortuneJack has created alone since a market-best bitcoin local casino thanks to numerous years of evolution and you can an unwavering user-very first attitude. FortuneJack’s crypto attention stands out making use of their financial help getting big coins such Bitcoin and you can Ethereum so you can facilitate timely, unknown enjoy in the a licensed environment managed in Curacao egaming licenses. 7Bit Gambling establishment are an extended-powering, subscribed online crypto gambling enterprise which have a large online game library, big incentives, and timely payouts all over several traditional and you can digital currencies. In just more a year in business, Metaspins has experienced alone as among the premier crypto gambling enterprises catering to help you digital gamblers all over feel levels.<\/p>\n

This doesn’t mean you will end up $400 with your own money, whether or not, since you manage stand to victory currency while playing throughout your free revolves. But let’s fool around with an effective 40x rollover criteria including of exactly how betting standards really works. When the we have been speaking of deposit incentives, the latest wagering conditions can turn to the a substantial funding out of your gambling enterprise money. If your wagering conditions connect with the advantage revolves, you really need to bet any profits you make to them a good specified level of minutes. The fresh new wagering standards are what you need to do to really obtain the most out of your incentive profits within cryptocurrency casinos. Making use of your Bitcoin local casino free revolves for the lower-difference slots mode you can purchase hold of small rewards after you have accomplished the new deal’s wagering criteria.<\/p>\n","protected":false},"excerpt":{"rendered":"

Games, Vave, Super Dice, and you may TG.Casino. A few of the most well-known crypto playing sites employed by members during the Canada is CoinCasino, Lucky Cut-off, BetNinja, BC.Games and you can Quick Gambling establishment. Therefore, you’ll select all kinds of slot online game, desk video game such as black-jack\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-24261","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/24261","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=24261"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/24261\/revisions"}],"predecessor-version":[{"id":24262,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/24261\/revisions\/24262"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=24261"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=24261"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=24261"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}