/* 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":27410,"date":"2026-05-15T13:12:52","date_gmt":"2026-05-15T13:12:52","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=27410"},"modified":"2026-05-15T13:12:53","modified_gmt":"2026-05-15T13:12:53","slug":"there-are-various-a-means-to-identify-no-deposit-bonuses-given-by-gambling-enterprises-2","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/there-are-various-a-means-to-identify-no-deposit-bonuses-given-by-gambling-enterprises-2\/","title":{"rendered":"There are various a means to identify no deposit bonuses given by gambling enterprises"},"content":{"rendered":"

The newest casino’s dedication to delivering a secure, clear, and user-amicable environment, coupled with the work on cutting-boundary technical and instantaneous profits on the blockchain, solidifies the updates while the a good trailblazer in the market. That have top-notch security measures, nice bonuses, and a person-friendly interface, Super Chop Gambling enterprise has easily dependent in itself since the a top interest to possess crypto betting fans. Hence, JackBit represents a captivating the fresh solution you to both leisure punters and devoted bettors should see to know a processed, innovative appeal providing to any or all gamble appearances. To start with, of the championing player privacy because of anonymous membership and you will lightning fast crypto winnings, JackBit forces iGaming forward sensibly.<\/p>\n

As his or her identity suggests, no-deposit incentives do not require players while making a bona fide currency deposit to be reported. Casino incentives usually are split into a couple groups \ufffd no-deposit incentives and put bonuses. No deposit bonuses usually are rather straightforward, however, there are some potential items you ought to know of prior to stating one.<\/p>\n

The fresh new crypto gambling enterprise market is actually ever-developing, with the fresh new even offers and you can programs Rolletto<\/a> growing usually. We’re right here to split on the preferred conditions there will be, to choose the Bitcoin local casino signal-up extra for example a pro. Typically one week doing betting for deposit bonuses. (Bundle facts differ somewhat of the resource, have a look at webpages).<\/p>\n

General business practical is normally up to $5<\/h2>\n

No-deposit incentives in the Bitcoin casinos was promotions you could allege in place of capital your bank account. There is researched the top no deposit Bitcoin local casino bonuses, which you can come across towards all of our shortlist significantly more than. You need to take into account the positives and negatives prior to stating good Bitcoin gambling enterprise no-deposit added bonus. ?You’ll be able to generally speaking discover large betting conditions before you withdraw earnings ?Because they require no funding, no-deposit incentives are usually very low well worth If you are however not sure, we’ve got developed the top positives and negatives having claiming a Bitcoin on-line casino no-deposit added bonus.<\/p>\n

Rakeback bonuses guarantee that regular professionals score things straight back off their bets. For those who would like to try a casino risk-totally free, no-deposit bonuses is greatest. With several legitimate systems providing such offers, you really have multiple chances to are your fortune with different extra structures and you can online game alternatives. Genuine no-deposit bonuses don’t possess lead invisible will cost you, while they don’t require you to definitely spend any cash.<\/p>\n

For each and every gambling enterprise listed on Casinofy is actually on their own analyzed, thus feel free to is numerous. Yes, you might allege no deposit bonuses during the as numerous some other gambling enterprises as you like, as long as you was a person at each and every you to definitely. It indicates to experience from the added bonus number a-flat number of minutes (generally anywhere between 15x to help you 50x) before any profits qualify to possess withdrawal. Online game with high RTP pricing otherwise a low volatility rating generally contribute less than 100% to your wagering requirements.<\/p>\n

Users place a bet and choose when you should cash out ahead of the latest multiplier crashes, to your aim of leaving during the right moment to optimize winnings. Of many systems give some other poker forms, along with video poker, real time broker poker, and online web based poker bedroom, therefore it is suitable for each other relaxed people and knowledgeable web based poker admirers. Roulette-certain systems have been assessed within better roulette sites roundup.<\/p>\n

Many Bitcoin casinos use in charge gaming gadgets in to its programs. Responsible gambling practices let ensure that incentive google search remains an enjoyable amusement hobby instead of development into the challenging behavior. When you’re Bitcoin local casino bonuses promote fascinating opportunities to increase gambling sense, keeping fit to play designs should will still be the priority. Always check when your specifications pertains to extra just or one another added bonus + deposit. Antique casinos normally restrict participants so you’re able to $5 for every single twist otherwise give when you are cleaning incentives, whereas Bitcoin gambling enterprises tend to make it $20-30 wagers while in the extra gamble. Restrict bet restrictions during the extra gamble choose cryptocurrency programs drastically.<\/p>\n

Crypto totally free spins incentives are the popular incentives crypto betting web sites render<\/h2>\n

Realistically, only 10%-15% off players arrived at a profitable withdrawal regarding internet casino no deposit extra advertising, on account of wagering difficulties, quick 7 go out expiration and you can online game volatility. Incentive codes discover a myriad of internet casino no-deposit incentives, and they are always personal, time-minimal, also provides you to casinos on the internet generate with affiliates. No-deposit 100 % free revolves try a specific subcategory within free spins incentives directory, where you are able to access lowest wagering has the benefit of and you can private totally free revolves bonus rules. Make sure you look the new casino website into the listed gaming licenses and make certain it\ufffds out of an established nation including Costa Rica, Panama, Malta, and\/or Curacao. Every detailed gold coins can be used for each other deposits and you will withdrawals, which have faster sites particularly LTC and you will DOGE generally clearing quicker than simply the fresh new BTC chief strings. It is a safe gambling establishment that covers users’ data and you can confidentiality, allowing anonymous gameplay which have minimum KYC checks.<\/p>\n

Crypto free spins bonuses are like any other extra and also have a betting requisite. Thus, now, we will dive into the best totally free spins incentives and all of you wish to know about them. Marco spends their community training to simply help one another pros and you can newcomers favor gambling enterprises, bonuses, and online game that fit its certain requires. We all love to expend the gambling enterprise incentives since easily while the you’ll, not most of the crypto gambling establishment no-deposit bonuses let this to help you takes place.<\/p>\n

Basic put incentives work better-worthy of if you are looking during the opportunities to victory real cash (25-35%), a lengthy game play tutorial, and you will about $sixty questioned result. Microgaming no-deposit bonuses shelter a wide range of video game technicians and you will volatility membership across their catalog. Pragmatic Enjoy no-deposit bonuses are good entry issues getting progressive party technicians and higher-volatility headings people already fully know. Betting is typically 35x-50x and you will cashout limitations remain $\/\ufffd100, which have extra get always disabled into the no deposit spins (yet , accepted through the wagering at the certain gambling enterprises).<\/p>\n

Always read and you may understand the fine print regarding an advantage ahead of stating it to make sure you will be making the best ing tastes and enjoy style. Such terms and conditions generally speaking information the new wagering standards, eligible game, and other restrictions you to apply at the bonus. With many great gambling enterprise incentives available, it can be challenging to choose the right choice for you. Particularly, a casino you will promote a free of charge spins extra off 100 spins to your a famous position online game that have a maximum win level of $five hundred and wagering criteria from 20x. An educated totally free revolves extra inside 2026 now offers plenty of revolves, a top limit earn count, and you may reduced wagering conditions. You should comment this fine print linked to the latest 100 % free revolves bonus ahead of claiming they, making certain that what’s needed is reasonable and you may doable.<\/p>\n

This guarantees the fresh new offers continue to be winning when you’re bringing genuine worthy of in order to players. Behind the scenes, no deposit incentives is actually carefully computed sale investments. No deposit added bonus gambling enterprises show a distinctive sector of your on line betting business, giving professionals the chance to was a real income game instead of risking their unique loans. To have a great, satisfying and shiny crypto gambling environment that have that which you assume off a leading-rated agent, CoinKings belongs to your shortlist of casinos to join.<\/p>\n","protected":false},"excerpt":{"rendered":"

The newest casino’s dedication to delivering a secure, clear, and user-amicable environment, coupled with the work on cutting-boundary technical and instantaneous profits on the blockchain, solidifies the updates while the a good trailblazer in the market. That have top-notch security measures, nice bonuses, and a person-friendly interface, Super Chop Gambling\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-27410","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/27410","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=27410"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/27410\/revisions"}],"predecessor-version":[{"id":27411,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/27410\/revisions\/27411"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=27410"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=27410"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=27410"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}