(function(){
var CN = 'menthorq_utm_params';
var LK = 'menthorq_utm_params';
var UK = ['utm_source','utm_medium','utm_campaign','utm_term','utm_content','utm_id'];
var CK = ['gclid','fbclid','msclkid','ttclid','twclid'];
var CD = 30;
var AK = UK.concat(CK);function sC(n,v,d){var e=new Date(Date.now()+d*864e5).toUTCString();var c=n+'='+encodeURIComponent(v)+';expires='+e+';path=/;SameSite=Lax';if(location.protocol==='https:')c+=';Secure';document.cookie=c;}
function gC(n){var m=document.cookie.match(new RegExp('(?:^|; )'+n+'=([^;]*)'));return m?decodeURIComponent(m[1]):'';}
function sv(d){var j=JSON.stringify(d);sC(CN,j,CD);try{localStorage.setItem(LK,j);}catch(e){}}
function hk(o){if(!o)return false;for(var i=0;i<AK.length;i++)if(o[AK[i]])return true;return false;}
function nm(d){if(!d)return null;if(d.first)return d;if(hk(d))return{first:d,last:d};return null;}
function ld(){var r=gC(CN);if(r){try{var n=nm(JSON.parse(r));if(n)return n;}catch(e){}}try{var s=localStorage.getItem(LK);if(s){var n=nm(JSON.parse(s));if(n)return n;}}catch(e){}return null;}
function mg(p,n){var o={};if(p)for(var k in p)o[k]=p[k];for(var k in n)o[k]=n[k];return o;}var ps = new URLSearchParams(window.location.search);
var fd = {}, has = false;
for (var i = 0; i < AK.length; i++) {
var v = ps.get(AK[i]);
if (v) { fd[AK[i]] = v; has = true; }
}// Click-ID synthesis: when only a click-id is present (no utm_source), derive
// utm_source/utm_medium so downstream analytics groups under the right channel.
var SY = {
gclid: ['google', 'cpc'],
fbclid: ['facebook', 'cpc'],
msclkid: ['bing', 'cpc'],
ttclid: ['tiktok', 'cpc'],
twclid: ['twitter', 'cpc']
};
if (has && !fd.utm_source) {
for (var sk in SY) {
if (fd[sk]) { fd.utm_source = SY[sk][0]; fd.utm_medium = SY[sk][1]; break; }
}
}if (has) {
fd.captured_at = new Date().toISOString();
var ex = ld();
// Last-touch: merge new fields ON TOP of previous last (preserva campi pregressi)
var newLast = ex && ex.last ? mg(ex.last, fd) : fd;
// First-touch: se ex.first ha almeno un UTM, e' completo e sticky.
// Se ex.first esiste ma e' click-id-only (orphan), completa con i campi nuovi.
// Se ex.first non esiste, usa fd come first.
var newFirst;
if (ex && ex.first) {
var firstHasUtm = false;
for (var i = 0; i < UK.length; i++) if (ex.first[UK[i]]) { firstHasUtm = true; break; }
newFirst = firstHasUtm ? ex.first : mg(ex.first, fd);
} else {
newFirst = fd;
}
sv({first: newFirst, last: newLast});
return;
}var raw = gC(CN);
if (raw) {
try {
var p = JSON.parse(raw);
if (!p.first && hk(p)) sv({first: p, last: p});
} catch(e) {}
return;
}try {
var s = localStorage.getItem(LK);
if (s) { var n = nm(JSON.parse(s)); if (n) sv(n); }
} catch(e) {}
})();
var breeze_prefetch = {"local_url":"https://menthorq.com","ignore_remote_prefetch":"1","ignore_list":["/account/","/login/","/thank-you/","/wp-json/openid-connect/userinfo","wp-admin","wp-login.php"]};
//# sourceURL=breeze-prefetch-js-extra
https://menthorq.com/wp-content/plugins/breeze/assets/js/js-front-end/breeze-prefetch-links.min.js
https://menthorq.com/wp-content/themes/yootheme/vendor/assets/uikit/dist/js/uikit.js
https://menthorq.com/wp-content/themes/yootheme/vendor/assets/uikit/dist/js/uikit-icons-circle.min.js
https://menthorq.com/wp-content/themes/yootheme/assets/site/js/theme.js
window.yootheme ||= {}; yootheme.theme = {"i18n":{"close":{"label":"Close","0":"yootheme"},"totop":{"label":"Back to top","0":"yootheme"},"marker":{"label":"Open","0":"yootheme"},"navbarToggleIcon":{"label":"Open menu","0":"yootheme"},"paginationPrevious":{"label":"Previous page","0":"yootheme"},"paginationNext":{"label":"Next page","0":"yootheme"},"searchIcon":{"toggle":"Open Search","submit":"Submit Search"},"slider":{"next":"Next slide","previous":"Previous slide","slideX":"Slide %s","slideLabel":"%s of %s"},"slideshow":{"next":"Next slide","previous":"Previous slide","slideX":"Slide %s","slideLabel":"%s of %s"},"lightboxPanel":{"next":"Next slide","previous":"Previous slide","slideLabel":"%s of %s","close":"Close"}}};
Introduction to Chart Patterns Basics Understanding the Foundations of Chart Patterns Understanding Repeating Market Price Structures In the previous sections, we learned about the importance of Trends , Support and Resistance , Volume, Reversals , and how to interpret the price action of an asset. Before moving on to indicators, it is important to introduce the concept of chart patterns.
Chart patterns tend to repeat over time and help us understand the movement of supply and demand and how price reacts in the market.
Price Action and Candlestick Information Using candlestick charts, traders have access to four key pieces of information within the same time frame: open, high, low, and close. Whether using a daily chart or five-minute candlesticks, price action continuously forms patterns that traders can use to understand or anticipate future price movements.
Price action in financial markets represents a constant battle between buyers and sellers, and this interaction is reflected through different types of candlesticks on a chart.
Introduction to Chart Patterns Basics 11 Types of Candlesticks Candlesticks can be broadly categorized into three main types.
High volatility candles, also known as big candles, are characterized by significant price movement and a large difference between opening and closing prices. These candles indicate that either buyers or sellers have gained control during the time frame, showing strong conviction and momentum.
Low volatility candles, or small candles, represent periods of indecision between supply and demand. The limited price movement suggests that neither buyers nor sellers have a clear advantage, resulting in market balance.
Doji candles are a distinct type of candlestick that clearly represents indecision. They have the same opening and closing price, creating a very small or nonexistent body, while still showing upper and lower shadows. Despite price movement during the period, neither buyers nor sellers were able to dominate. There are several variations of Doji candles, each providing insight into possible trend continuation or reversal.
Understanding these candlestick types allows traders to interpret price action more effectively.
Introduction to Chart Patterns Basics 12 Candlestick Analysis and Market Sentiment By analyzing the size, shape, and position of candlesticks, traders can identify bullish or bearish sentiment, recognize key support and resistance levels, and spot potential trend changes. Candlestick analysis is typically used in conjunction with other technical tools to increase the probability of successful trades.
Watch the Full MasterClass on Technical Analysis and Momentum.
What Are Chart Patterns? Chart patterns are formed from historical price movements that tend to repeat over time. These recurring formations provide indications of whether price is likely to continue its current trend or reverse direction.
Patterns are plotted by joining points on a price chart. Price does not move indefinitely in one direction, and transitional phases between trends are often highlighted through recognizable price patterns.
A price pattern is defined as a configuration formed by a series of trendlines and price curves. These patterns help traders anticipate future price movements.
Continuation and Reversal Patterns There are two main types of chart patterns: continuation patterns and reversal patterns.
Continuation patterns represent temporary pauses in an existing trend. During these phases, the market consolidates before resuming its movement with renewed momentum. Common continuation patterns include triangles, rectangles, flags, wedges, and pennants.
Reversal patterns occur during an existing trend and signal potential changes in direction. Common reversal patterns include head and shoulders, double tops and bottoms, and triple tops and bottoms.
How to Trade Momentum.
Market Structure and Breakouts Market structure plays a key role in chart pattern analysis. Every trading day, patterns form that can be used to identify opportunities.
In many cases, chart patterns are characterized by breakout points. These breakouts often signal the start of a new price movement. In the next lessons, these patterns will be analyzed in detail along with how to trade them effectively.
Introduction to Chart Patterns Basics 13 Trade these patterns with a Quantitative Technical Analysis Tool: Q-Momentum Indicator.
Conclusion Chart patterns provide valuable insight into market structure, price behavior, and the balance between buyers and sellers. By learning to recognize continuation and reversal patterns and understanding their breakout points, traders can improve their ability to anticipate price movements and increase the probability of success within their trading strategies.
Chat with QUIN about you Trading Set Ups.
Join us today
Access daily Market Research and our interactive Dashboard . Make better trading decisions.
MenthorQ ©2025 701 Brickell Key BLVD 33131, Miami (FL)
Quantitative Models
Resources
Company
Account console.warn({"message":"Unknown argument \"membership_level_operator\" on field \"customMpcsCourse\" of type \"MpcsCoursesQuery\". Did you mean \"skill_level_operator\"?"});
window.$yooessentials = window.$yooessentials || {};
window.$yooessentials.infos = window.$yooessentials.infos || [];
window.$yooessentials.errors = window.$yooessentials.errors || [];
window.$yooessentials.warnings = window.$yooessentials.warnings || [];
window.$yooessentials.errors.push({"log":"Unknown argument \"membership_level_operator\" on field \"customMpcsCourse\" of type \"MpcsCoursesQuery\". Did you mean \"skill_level_operator\"?","path":null,"trace":"#0 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(403): YOOtheme\\GraphQL\\Validator\\Rules\\KnownArgumentNames::YOOtheme\\GraphQL\\Validator\\Rules\\{closure}()\n#1 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(470): YOOtheme\\GraphQL\\Language\\Visitor::YOOtheme\\GraphQL\\Language\\{closure}()\n#2 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(276): YOOtheme\\GraphQL\\Language\\Visitor::YOOtheme\\GraphQL\\Language\\{closure}()\n#3 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Validator\/DocumentValidator.php(119): YOOtheme\\GraphQL\\Language\\Visitor::visit()\n#4 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/GraphQL.php(155): YOOtheme\\GraphQL\\Validator\\DocumentValidator::validate()\n#5 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/GraphQL.php(97): YOOtheme\\GraphQL\\GraphQL::promiseToExecute()\n#6 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source.php(71): YOOtheme\\GraphQL\\GraphQL::executeQuery()\n#7 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source\/SourceTransform.php(122): YOOtheme\\Builder\\Source->query()\n#8 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source\/SourceTransform.php(69): YOOtheme\\Builder\\Source\\SourceTransform->querySource()\n#9 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(275): YOOtheme\\Builder\\Source\\SourceTransform->prerender()\n#10 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#11 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#12 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#13 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(104): YOOtheme\\Builder->applyTransforms()\n#14 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(121): YOOtheme\\Builder->load()\n#15 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/templates\/menu\/menu.php(159): YOOtheme\\Builder->render()\n#16 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(268): require('...')\n#17 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View\/FileLoader.php(25): YOOtheme\\View->evaluate()\n#18 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\View\\FileLoader->__invoke()\n#19 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress\/src\/UrlLoader.php(26): YOOtheme\\View->YOOtheme\\{closure}()\n#20 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\Theme\\Wordpress\\UrlLoader::resolveRelativeUrl()\n#21 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(231): YOOtheme\\View->YOOtheme\\{closure}()\n#22 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-menus\/src\/MenuWalker.php(102): YOOtheme\\View->render()\n#23 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/nav-menu-template.php(621): YOOtheme\\Theme\\Wordpress\\MenuWalker->walk()\n#24 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/nav-menu-template.php(241): walk_nav_menu_tree()\n#25 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/widgets\/class-wp-nav-menu-widget.php(109): wp_nav_menu()\n#26 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(353): WP_Nav_Menu_Widget->widget()\n#27 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(536): YOOtheme\\Theme\\Widgets\\WidgetsListener->displayWidget()\n#28 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(499): YOOtheme\\Theme\\Widgets\\WidgetsListener->getWidget()\n#29 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(130): YOOtheme\\Theme\\Widgets\\WidgetsListener->createMenuWidget()\n#30 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/container\/src\/Container.php(229): YOOtheme\\Theme\\Widgets\\WidgetsListener->afterSidebar()\n#31 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/platform-wordpress\/src\/FilterLoader.php(28): YOOtheme\\Container->call()\n#32 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/class-wp-hook.php(343): YOOtheme\\Wordpress\\FilterLoader->YOOtheme\\Wordpress\\{closure}()\n#33 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/class-wp-hook.php(365): WP_Hook->apply_filters()\n#34 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/plugin.php(522): WP_Hook->do_action()\n#35 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/widgets.php(717): do_action()\n#36 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/templates\/header.php(239): dynamic_sidebar()\n#37 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(268): require('...')\n#38 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View\/FileLoader.php(25): YOOtheme\\View->evaluate()\n#39 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\View\\FileLoader->__invoke()\n#40 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress\/src\/UrlLoader.php(26): YOOtheme\\View->YOOtheme\\{closure}()\n#41 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\Theme\\Wordpress\\UrlLoader::resolveRelativeUrl()\n#42 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(231): YOOtheme\\View->YOOtheme\\{closure}()\n#43 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(82): YOOtheme\\View->render()\n#44 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/header.php(145): YOOtheme\\View->__invoke()\n#45 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template.php(814): require_once('...')\n#46 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template.php(749): load_template()\n#47 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/general-template.php(48): locate_template()\n#48 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/page.php(10): get_header()\n#49 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template-loader.php(132): include('...')\n#50 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-blog-header.php(19): require_once('...')\n#51 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/index.php(17): require('...')\n#52 {main}"});
console.warn({"message":"Unknown argument \"membership_level_operator\" on field \"customMpcsCourses\" of type \"MpcsCoursesQuery\". Did you mean \"skill_level_operator\"?"});
window.$yooessentials.errors.push({"log":"Unknown argument \"membership_level_operator\" on field \"customMpcsCourses\" of type \"MpcsCoursesQuery\". Did you mean \"skill_level_operator\"?","path":null,"trace":"#0 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(403): YOOtheme\\GraphQL\\Validator\\Rules\\KnownArgumentNames::YOOtheme\\GraphQL\\Validator\\Rules\\{closure}()\n#1 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(470): YOOtheme\\GraphQL\\Language\\Visitor::YOOtheme\\GraphQL\\Language\\{closure}()\n#2 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(276): YOOtheme\\GraphQL\\Language\\Visitor::YOOtheme\\GraphQL\\Language\\{closure}()\n#3 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Validator\/DocumentValidator.php(119): YOOtheme\\GraphQL\\Language\\Visitor::visit()\n#4 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/GraphQL.php(155): YOOtheme\\GraphQL\\Validator\\DocumentValidator::validate()\n#5 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/GraphQL.php(97): YOOtheme\\GraphQL\\GraphQL::promiseToExecute()\n#6 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source.php(71): YOOtheme\\GraphQL\\GraphQL::executeQuery()\n#7 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source\/SourceTransform.php(122): YOOtheme\\Builder\\Source->query()\n#8 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source\/SourceTransform.php(69): YOOtheme\\Builder\\Source\\SourceTransform->querySource()\n#9 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(275): YOOtheme\\Builder\\Source\\SourceTransform->prerender()\n#10 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#11 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#12 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#13 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#14 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(104): YOOtheme\\Builder->applyTransforms()\n#15 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(121): YOOtheme\\Builder->load()\n#16 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/templates\/menu\/menu.php(159): YOOtheme\\Builder->render()\n#17 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(268): require('...')\n#18 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View\/FileLoader.php(25): YOOtheme\\View->evaluate()\n#19 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\View\\FileLoader->__invoke()\n#20 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress\/src\/UrlLoader.php(26): YOOtheme\\View->YOOtheme\\{closure}()\n#21 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\Theme\\Wordpress\\UrlLoader::resolveRelativeUrl()\n#22 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(231): YOOtheme\\View->YOOtheme\\{closure}()\n#23 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-menus\/src\/MenuWalker.php(102): YOOtheme\\View->render()\n#24 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/nav-menu-template.php(621): YOOtheme\\Theme\\Wordpress\\MenuWalker->walk()\n#25 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/nav-menu-template.php(241): walk_nav_menu_tree()\n#26 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/widgets\/class-wp-nav-menu-widget.php(109): wp_nav_menu()\n#27 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(353): WP_Nav_Menu_Widget->widget()\n#28 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(536): YOOtheme\\Theme\\Widgets\\WidgetsListener->displayWidget()\n#29 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(499): YOOtheme\\Theme\\Widgets\\WidgetsListener->getWidget()\n#30 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(130): YOOtheme\\Theme\\Widgets\\WidgetsListener->createMenuWidget()\n#31 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/container\/src\/Container.php(229): YOOtheme\\Theme\\Widgets\\WidgetsListener->afterSidebar()\n#32 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/platform-wordpress\/src\/FilterLoader.php(28): YOOtheme\\Container->call()\n#33 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/class-wp-hook.php(343): YOOtheme\\Wordpress\\FilterLoader->YOOtheme\\Wordpress\\{closure}()\n#34 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/class-wp-hook.php(365): WP_Hook->apply_filters()\n#35 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/plugin.php(522): WP_Hook->do_action()\n#36 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/widgets.php(717): do_action()\n#37 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/templates\/header.php(239): dynamic_sidebar()\n#38 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(268): require('...')\n#39 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View\/FileLoader.php(25): YOOtheme\\View->evaluate()\n#40 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\View\\FileLoader->__invoke()\n#41 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress\/src\/UrlLoader.php(26): YOOtheme\\View->YOOtheme\\{closure}()\n#42 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\Theme\\Wordpress\\UrlLoader::resolveRelativeUrl()\n#43 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(231): YOOtheme\\View->YOOtheme\\{closure}()\n#44 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(82): YOOtheme\\View->render()\n#45 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/header.php(145): YOOtheme\\View->__invoke()\n#46 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template.php(814): require_once('...')\n#47 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template.php(749): load_template()\n#48 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/general-template.php(48): locate_template()\n#49 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/page.php(10): get_header()\n#50 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template-loader.php(132): include('...')\n#51 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-blog-header.php(19): require_once('...')\n#52 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/index.php(17): require('...')\n#53 {main}"});
UIkit.icon.add({"fa6-regular--user":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 448 512\" width=\"20\" height=\"20\"><path d=\"M304 128a80 80 0 10-160 0 80 80 0 10160 0zm-208 0a128 128 0 11256 0 128 128 0 11-256 0zM49.3 464h349.5c-8.9-63.3-63.3-112-129-112h-91.4c-65.7 0-120.1 48.7-129 112zM0 482.3C0 383.8 79.8 304 178.3 304h91.4c98.5 0 178.3 79.8 178.3 178.3 0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3z\"\/><\/svg>"})
var menthorq_gtm = {"system":{"ajax_url":"https://menthorq.com/wp-admin/admin-ajax.php","nonce":"4c11b822d9","site_url":"https://menthorq.com","home_url":"https://menthorq.com","timestamp":1786930176,"environment":"production"},"debug":{"enabled":false,"environment":"production"},"user":[],"container_id":"GTM-599ZCR89"};
//# sourceURL=gtm-tracking-js-extra
https://menthorq.com/wp-content/themes/memberpress-wp-th/modules/GoogleTagManager/Assets/Public/Js/gtm-tracking.js
https://menthorq.com/wp-content/themes/memberpress-wp-th/modules/Mixpanel/Assets/Public/Js/mixpanel-tracking.js
var menthorq_common = {"system":{"ajax_url":"https://menthorq.com/wp-admin/admin-ajax.php","nonce":"c1ac38650a","version":"1.30.1","site_url":"https://menthorq.com","home_url":"https://menthorq.com","timestamp":1786930176},"debug":{"enabled":false,"environment":"production"}};
//# sourceURL=common-core-js-extra
https://menthorq.com/wp-content/themes/memberpress-wp-th/modules/Core/Assets/Public/Js/common.js
https://menthorq.com/wp-content/themes/memberpress-wp-th/modules/TableOfContents/Assets/Public/Js/tableofcontents.js
https://menthorq.com/wp-content/themes/memberpress-wp-th/dist/js/public.bundle.js
(function() {
'use strict';
// Function to get cookie value
function getCookie(name) {
const value = `; ${document.cookie}`;
const parts = value.split(`; ${name}=`);
if (parts.length === 2) return parts.pop().split(';').shift();
return null;
}
// Function to delete cookie
function deleteCookie(name) {
document.cookie = name + '=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
// Read pending events from cookie
const cookieValue = getCookie('gtm_events_v2');
if (cookieValue) {
try {
// First decode URL encoding (browsers automatically encode cookies)
// Then decode from base64, then parse JSON
const urlDecoded = decodeURIComponent(cookieValue);
const decodedValue = atob(urlDecoded);
const events = JSON.parse(decodedValue);
// Validate that events is an array
if (!Array.isArray(events)) {
throw new Error('Events is not an array');
}
console.log('%c[TrackingManager GTM]%c Found ' + events.length + ' pending events in cookie', 'color: #4CAF50; font-weight: bold', 'color: inherit');
// Ensure dataLayer exists
window.dataLayer = window.dataLayer || [];
// Push all events to dataLayer
events.forEach(function(eventData, index) {
const dataLayerEvent = {
event: eventData.event
};
// Add all properties
if (eventData.properties && typeof eventData.properties === 'object') {
Object.keys(eventData.properties).forEach(function(key) {
dataLayerEvent[key] = eventData.properties[key];
});
}
dataLayerEvent._timestamp = eventData.timestamp;
window.dataLayer.push(dataLayerEvent);
console.log('%c[TrackingManager GTM]%c Event #' + (index + 1) + ':', 'color: #4CAF50; font-weight: bold', 'color: inherit', eventData);
});
console.log('%c[TrackingManager GTM]%c All events pushed to dataLayer', 'color: #4CAF50; font-weight: bold', 'color: inherit');
// Delete the cookie
deleteCookie('gtm_events_v2');
} catch (e) {
console.error('[TrackingManager GTM] Error parsing events from cookie:', e);
// Delete corrupted cookie
deleteCookie('gtm_events_v2');
}
}
// Also clean up old cookie format (v1) if it exists
deleteCookie('gtm_pending_events');
})();
(function(){
var GA4_COOKIE = 'ga4_client_id';
var GA4_LS_KEY = 'menthorq_ga4_client_id';
var COOKIE_DAYS = 730;
var MAX_RETRIES = 10;
var RETRY_MS = 500;function getCookie(name) {
var match = document.cookie.match(new RegExp('(?:^|; )' + name + '=([^;]*)'));
return match ? decodeURIComponent(match[1]) : '';
}function setCookie(name, value, days) {
var expires = new Date(Date.now() + days * 864e5).toUTCString();
var cookie = name + '=' + encodeURIComponent(value) + ';expires=' + expires + ';path=/;SameSite=Lax';
if (location.protocol === 'https:') cookie += ';Secure';
document.cookie = cookie;
}function extractClientId() {
var ga = getCookie('_ga');
if (ga) {
var parts = ga.split('.');
if (parts.length >= 4) {
return parts.slice(2).join('.');
}
}
return '';
}function capture() {
if (getCookie(GA4_COOKIE)) return true;var clientId = extractClientId();
if (clientId) {
setCookie(GA4_COOKIE, clientId, COOKIE_DAYS);
try { localStorage.setItem(GA4_LS_KEY, clientId); } catch(e) {}
return true;
}
return false;
}if (capture()) return;// _ga cookie not yet set — poll until gtag.js initializes
var attempts = 0;
var timer = setInterval(function() {
attempts++;
if (capture() || attempts >= MAX_RETRIES) {
clearInterval(timer);
// Last resort: restore from localStorage
if (!getCookie(GA4_COOKIE)) {
try {
var stored = localStorage.getItem(GA4_LS_KEY);
if (stored) setCookie(GA4_COOKIE, stored, COOKIE_DAYS);
} catch(e) {}
}
}
}, RETRY_MS);
})();