/* 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":1744,"date":"2026-04-07T23:33:45","date_gmt":"2026-04-07T23:33:45","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=1744"},"modified":"2026-04-07T23:33:45","modified_gmt":"2026-04-07T23:33:45","slug":"uk-bookmakers-not-on-gamstop-comprehensive-overview-to-unregulated-betting-alternatives","status":"publish","type":"post","link":"https:\/\/klecet.edu.in\/alumni\/uk-bookmakers-not-on-gamstop-comprehensive-overview-to-unregulated-betting-alternatives\/","title":{"rendered":"UK Bookmakers Not on Gamstop: Comprehensive Overview to Unregulated Betting Alternatives"},"content":{"rendered":"

For UK punters looking for alternatives to self-exclusion restrictions, exploring uk bookmakers not on gamstop offers a route to unregulated betting markets. These platforms function beyond the UK Gambling Commission’s jurisdiction, providing access to betting markets without the restrictions placed by Gamstop registration. While traditional UK-licensed bookmakers enforce rigorous self-exclusion protocols, international betting sites offer a alternative regulatory framework that appeals to seasoned punters who want greater control over their betting habits. Understanding the terrain of offshore bookmakers, their licensing structures, and the implications for UK players is crucial for making sound choices about where to put your wagers securely and responsibly.<\/p>\n

Learning about UK Betting sites Not on Gamstop<\/h2>\n

The regulatory framework for uk bookmakers not on gamstop differs significantly from traditional UK-licensed platforms, as these operators hold licenses from international jurisdictions such as Malta, Curacao, or Gibraltar. These offshore bookmakers are not connected to the Gamstop database, meaning they cannot access or enforce UK self-exclusion records. For bettors who have previously registered with Gamstop but wish to resume gambling activities, these platforms provide an alternative. However, it’s crucial to understand that choosing uk bookmakers not on gamstop means accepting different regulatory protections and consumer safeguards than those mandated by the UK Gambling Commission, which requires careful consideration of the risks involved.<\/p>\n

International betting sites operating outside Gamstop’s reach typically offer attractive betting odds, varied wagering options, and lucrative promotional offers that match or surpass UK-licensed alternatives. These operators serve to a global audience and often provide enhanced features such as digital currency transactions, higher betting limits, and more flexible withdrawal policies. The appeal of uk bookmakers not on gamstop goes further than simply bypassing self-exclusion measures; many seasoned punters appreciate the fewer limitations on promotional conditions, betting caps, and account verification processes. Nevertheless, players must conduct thorough research to find trustworthy operators with proven operational history and valid gambling licenses from recognized international authorities.<\/p>\n

Gambling responsibility remains a individual obligation when using international betting operators, as the automatic protections provided by UK-regulated sites do not apply. Bettors should implement their own protective measures, including establishing deposit caps, maintaining strict budgets, and identifying red flags of problem gambling. While these overseas operators offer relief from Gamstop restrictions, they also demand greater self-discipline and awareness. Understanding the legal implications, transaction handling variations, and dispute resolution mechanisms available through overseas regulatory authorities is crucial before committing funds. Players should favor platforms offering clear conditions, responsive customer support, and established credibility within the overseas betting sector to ensure a safe wagering environment.<\/p>\n

Why Players Choose Non-Gamstop Bookmakers<\/h2>\n

The choice to explore uk bookmakers not on gamstop originates from multiple reasons that extend beyond basic preference. Many seasoned punters become limited by past self-exclusion choices that no longer align with their current circumstances or betting patterns. These services offer an option for those who have developed better self-control and wish to return to betting activities without delaying for exclusion periods to end. The appeal lies not in bypassing responsible gambling but in reaching betting markets when conventional options remain closed due to past registration decisions.<\/p>\n

International bookmakers functioning beyond Gamstop’s framework provide experienced bettors options that UK-regulated sites cannot provide throughout self-exclusion periods. These platforms cater to people that have reassessed their relationship with gambling and want to participate in betting opportunities according to their preferences. The presence of uk bookmakers not on gamstop creates a dynamic market where bettors can select platforms based on features, odds, and services rather than remaining restricted by domestic restrictions. This freedom of choice appeals especially with those who favor controlling their betting activities independently without mandatory intervention systems.<\/p>\n

Customization and Individual Command<\/h3>\n

One of the key benefits that uk bookmakers not on gamstop deliver is the opportunity for punters to make independent decisions over their wagering decisions. Unlike regulated bookmakers that enforce standardized funding caps and suspension windows, unregulated operators typically enable bettors to set their own boundaries or operate without predetermined limits. This method draws to experienced gamblers who recognize their financial constraints and favor control in handling their wagering funds. The versatility covers to withdrawal processes, betting limits, and account management features that put control directly in the control of bettors rather than adhering to standardized regulatory rules.<\/p>\n

The independent structure of uk bookmakers not on gamstop empowers responsible bettors to develop personalized gambling frameworks that match their personal situations. Players can adjust their betting patterns, stakes, and pace based on their own assessment rather than adhering to external restrictions. This degree of autonomy particularly benefits experienced wagering professionals whose approach to wagering varies considerably from casual bettors. While this freedom requires increased self-control, many seasoned bettors value the trust these platforms show toward their ability to gamble responsibly without required protections that may feel restrictive or unnecessary for their betting style.<\/p>\n

Access to Improved Odds and Bonus Offers<\/h3>\n

The competitive landscape of uk bookmakers not on gamstop often results in more attractive odds and generous promotional offers compared to their UK-regulated counterparts. Operating under different licensing jurisdictions with different tax structures allows these bookmakers to offer enhanced value to customers through improved margins and competitive pricing. Many offshore platforms provide better odds on popular markets, particularly in football, horse racing, and international sporting events, which can significantly impact long-term profitability for serious bettors. The reduced operational costs in certain jurisdictions enable these bookmakers to pass savings onto customers through superior odds and more frequent price boosts.<\/p>\n

Promotional strategies employed by uk bookmakers not on gamstop frequently surpass those available on UK-licensed sites in both generosity and variety. Welcome bonuses, reload incentives, and loyalty rewards often include increased percentage matches, reduced wagering requirements, and greater flexibility than domestic operators can provide under UKGC regulations. These platforms compete aggressively for international customers, resulting in cashback schemes, enhanced accumulator bonuses, and VIP programs that recognize regular betting participation. For value-conscious punters, the combination of superior baseline odds and superior promotional offerings generates compelling financial incentives that can significantly enhance their total betting performance over time.<\/p>\n

Top UK Betting Sites Not on Gamstop Comparison<\/h2>\n

When assessing various offshore wagering platforms, UK bettors should review multiple important factors including licensing credentials, market variety, payment methods, and customer support quality. The most trusted uk bookmakers not on gamstop are licensed from recognized regulatory bodies such as Curacao, Malta Gaming Authority, or the Gibraltar Regulatory Authority, providing a baseline level of regulatory supervision and player protection. These platforms generally provide competitive odds across major sports, extensive in-play wagering options, and generous welcome bonuses that frequently surpass what domestic betting sites can provide under existing regulatory limitations. Understanding the strengths and limitations of individual operators helps bettors choose platforms that align with their specific preferences and betting strategies.<\/p>\n\n\n\n\n\n\n\n
Bookmaker<\/strong><\/td>\nLicense<\/strong><\/td>\nWelcome Bonus<\/strong><\/td>\nKey Features<\/strong><\/td>\n<\/tr>\n
Bet-Nox<\/td>\nCuracao eGaming<\/td>\n100% up to \u00a3200<\/td>\nLive streaming, extensive markets, crypto payments supported<\/td>\n<\/tr>\n
SpinBet<\/td>\nMalta Gaming Authority<\/td>\n150% up to \u00a3300<\/td>\nMobile application, round-the-clock customer service, Asian handicap expertise<\/td>\n<\/tr>\n
PremierPlay<\/td>\nCuracao eGaming<\/td>\n200% up to \u00a3500<\/td>\nQuick withdrawal times, VIP program, esports betting<\/td>\n<\/tr>\n
GlobalBet365<\/td>\nGibraltar Regulatory Authority<\/td>\n100% up to \u00a3250<\/td>\nCash-out options, virtual sports betting, comprehensive statistics<\/td>\n<\/tr>\n
BetWorld<\/td>\nCuracao eGaming<\/td>\n175% up to \u00a3400<\/td>\nMultiple languages, diverse payment methods, live casino games<\/td>\n<\/tr>\n<\/table>\n

The selection of uk bookmakers not on gamstop continues to expand as global bookmakers acknowledge the interest from UK players looking for unrestricted betting access. Each platform brings notable strengths, from targeted market selection in lesser-known sports to top-tier mobile betting solutions and innovative features like bet construction tools and improved odds deals. Payment processing stands as a important element, with top overseas operators offering multiple choices including conventional card transactions, digital wallets like Skrill and Neteller, and rising cryptocurrency payments that deliver greater anonymity and quicker transaction speeds compared to conventional banking methods.<\/p>\n

Customer service standards vary significantly among offshore operators, making it essential to select platforms with attentive support teams available through multiple channels including instant messaging, email, and phone assistance. The best uk bookmakers not on gamstop maintain professional support staff who understand UK market expectations and can resolve queries promptly in English. Additionally, these platforms focus in user-friendly interfaces, comprehensive betting guides, and clear terms and conditions that explicitly detail wagering requirements, withdrawal procedures, and responsible gambling tools. While these sites operate outside Gamstop’s framework, reputable operators still offer voluntary limits, reflection periods, and account closure options for players who wish to control their gambling activities responsibly.<\/p>\n

Important Aspects of Non-Gamstop Bookmakers<\/h2>\n

The defining qualities that identify uk bookmakers not on gamstop distinguish them from their UK-regulated counterparts in multiple significant ways. These operators typically deliver increased wagering caps, more generous bonus structures, and access to a broader range of international markets that may not be accessible via UKGC-licensed operators. Enhanced privacy features, digital currency options, and streamlined identity requirements establish a streamlined betting experience for experienced bettors. Additionally, these sites often provide more competitive odds across various sports and events, alongside advanced wagering features that serve professional gamblers seeking maximum flexibility and value in their betting endeavors.<\/p>\n