<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>Besige Breintjies</provider_name><provider_url>http://besigebreintjies.co.za/af</provider_url><author_name>Besige Breintjies</author_name><author_url>http://besigebreintjies.co.za/af/author/besige44brein22/</author_url><title>Doughnut word game - Besige Breintjies</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="yTmxeDYqOm"&gt;&lt;a href="http://besigebreintjies.co.za/af/doughnut-game/"&gt;Doughnut word game&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="http://besigebreintjies.co.za/af/doughnut-game/embed/#?secret=yTmxeDYqOm" width="600" height="338" title="&#x201C;Doughnut word game&#x201D; &#x2014; Besige Breintjies" data-secret="yTmxeDYqOm" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script&gt;
/**
 * WordPress inline HTML embed
 *
 * @since 4.4.0
 * @output wp-includes/js/wp-embed.js
 *
 * Single line comments should not be used since they will break
 * the script when inlined in get_post_embed_html(), specifically
 * when the comments are not stripped out due to SCRIPT_DEBUG
 * being turned on.
 */
(function ( window, document ) {
	'use strict';

	/* Abort for ancient browsers. */
	if ( ! document.querySelector || ! window.addEventListener || typeof URL === 'undefined' ) {
		return;
	}

	/** @namespace wp */
	window.wp = window.wp || {};

	/* Abort if script was already executed. */
	if ( !! window.wp.receiveEmbedMessage ) {
		return;
	}

	/**
	 * Receive embed message.
	 *
	 * @param {MessageEvent} e
	 */
	window.wp.receiveEmbedMessage = function( e ) {
		var data = e.data;

		/* Verify shape of message. */
		if (
			! ( data || data.secret || data.message || data.value ) ||
			/[^a-zA-Z0-9]/.test( data.secret )
		) {
			return;
		}

		var iframes = document.querySelectorAll( 'iframe[data-secret="' + data.secret + '"]' ),
			blockquotes = document.querySelectorAll( 'blockquote[data-secret="' + data.secret + '"]' ),
			allowedProtocols = new RegExp( '^https?:$', 'i' ),
			i, source, height, sourceURL, targetURL;

		for ( i = 0; i &lt; blockquotes.length; i++ ) {
			blockquotes[ i ].style.display = 'none';
		}

		for ( i = 0; i &lt; iframes.length; i++ ) {
			source = iframes[ i ];

			if ( e.source !== source.contentWindow ) {
				continue;
			}

			source.removeAttribute( 'style' );

			if ( 'height' === data.message ) {
				/* Resize the iframe on request. */
				height = parseInt( data.value, 10 );
				if ( height &gt; 1000 ) {
					height = 1000;
				} else if ( ~~height &lt; 200 ) {
					height = 200;
				}

				source.height = height;
			} else if ( 'link' === data.message ) {
				/* Link to a specific URL on request. */
				sourceURL = new URL( source.getAttribute( 'src' ) );
				targetURL = new URL( data.value );

				if (
					allowedProtocols.test( targetURL.protocol ) &amp;&amp;
					targetURL.host === sourceURL.host &amp;&amp;
					document.activeElement === source
				) {
					window.top.location.href = data.value;
				}
			}
		}
	};

	function onLoad() {
		var iframes = document.querySelectorAll( 'iframe.wp-embedded-content' ),
			i, source, secret;

		for ( i = 0; i &lt; iframes.length; i++ ) {
			/** @var {IframeElement} */
			source = iframes[ i ];

			secret = source.getAttribute( 'data-secret' );
			if ( ! secret ) {
				/* Add secret to iframe */
				secret = Math.random().toString( 36 ).substring( 2, 12 );
				source.src += '#?secret=' + secret;
				source.setAttribute( 'data-secret', secret );
			}

			/*
			 * Let post embed window know that the parent is ready for receiving the height message, in case the iframe
			 * loaded before wp-embed.js was loaded. When the ready message is received by the post embed window, the
			 * window will then (re-)send the height message right away.
			 */
			source.contentWindow.postMessage( {
				message: 'ready',
				secret: secret
			}, '*' );
		}
	}

	window.addEventListener( 'message', window.wp.receiveEmbedMessage, false );
	document.addEventListener( 'DOMContentLoaded', onLoad, false );
})( window, document );
//# sourceURL=http://besigebreintjies.co.za/wp-includes/js/wp-embed.js
&lt;/script&gt;</html><description>English Instructions: Children should take their vowel card (it contains &#x201C;plates&#x201D; with the vowels showing in red) and a doughnut. Next, they place their doughnut on the plate so that the red vowel shows through the hole and practice sounding out the word it creates. Not every pairing of doughnut and plates will create a real word. This is a teachable moment. Take this opportunity to have your child (if they are old enough) to write down all the words the combinations make &#x2013; even the silly ones. If your child is still little, record the words on their behalf and have a laugh at the silly words you create. Click here to download the doughnut word game. Afrikaanse Instruksies: Kinders neem hul vokaal kaart (wat &#x201C;borde&#x201D; met die vokale in rooi het) en &#x2018;n oliebol. Neem dan &#x2018;n oliebol en plaas dit bo-oor die bord sodat die rooi vokaal deur die gaatjie loer, en oefen dan om die woord te klank. Nie elke kombinasie van vokaal en oliebol sal &#x2018;n werklike woord skep nie. Gebruik hierdie geleentheid om jou kleinding te leer: indien jou kind groot genoeg is kan hy self al die kombinasies neerskryf. Indien nie, doen dit [&hellip;]</description></oembed>
