if(typeof(window['i5eac64b7']) == 'undefined') {

	var i5eac64b7 = function() {

		this.response = null;
		this.script_host = 'faithfulbloggersnetwork.com';
		this.script_req = '/wp-content/plugins/oiopub-direct/js.php';
	
		this.splice_count = 0;
		this.script_count = 0;

		this.node = null;
		this.node_queue = new Array();
		this.node_queue_parent = new Array();
	
		this.dw = document.write;
		this.dw_data = new Array();

		//init
		this.init = function() {
			var obj = this;
			if(window.attachEvent) {
				window.attachEvent('onload', function() { obj.find_scripts(obj); });
			} else {
				window.addEventListener('load', function() { obj.find_scripts(obj); }, false);
			}
		}

		//find scripts
		this.find_scripts = function(obj) {
			document.write = function(data) {
				return ie9f6b85d.write_dom(data);
			}
			document.writeln = function(data) {
				return ie9f6b85d.write_dom(data) + "\n";
			}
			if(document.getElementsByTagName('body')[0].innerHTML.replace(/^\s+|\s+$/g, "") == '') {
				var body = false;
			} else {
				var body = true;
			}
			var query = new Array();
			var doc = document.documentElement || document.body;
			var scripts = doc.getElementsByTagName('script');
			for(var a=0; a < scripts.length; a++) {
				if(scripts[a].src.indexOf(this.script_host + this.script_req) != -1 || scripts[a].src.indexOf(this.script_req) == 0) {
					if(!body) {
						var temp = scripts[a].cloneNode(true);
						document.getElementsByTagName('head')[0].removeChild(scripts[a]);
						document.body.appendChild(temp);
						scripts[a] = temp;
					}
					var parts = scripts[a].src.split('?');
					if(parts[1]) {
						var type, zone;
						var pairs = parts[1].split('&');
						for(var b=0; b < pairs.length; b++) {
							var split = pairs[b].split('=');
							if(split[0] == 'type') {
								type = split[1];
							} else if(split[0] == 'zone') {
								zone = split[1];
							}
						}
						if(type && zone) {
							obj.script_count++;
							scripts[a].id = "ie9f6b85d_" + obj.script_count;
							query.push(parts[1] + "&id=" + scripts[a].id);
						}
					}
				}
			}
			obj.insert_script(query);
		}

		//insert script
		this.insert_script = function(query) {
			var s = document.createElement('script');
			s.type = 'text/javascript';
			s.async = true;
			s.src = '//' + this.script_host + this.script_req.replace(/js.php/g, "js_http.php") + '?cls=ie9f6b85d&queries=' + encodeURIComponent(query.join(';'));
			s.onload = s.onreadystatechange = function() {
				if(!s.readyState || s.readyState === "loaded" || s.readyState === "complete") {
					s.onload = s.onreadystatechange = null;
					if(head && s.parentNode) {
						head.removeChild(s);
					}
				}
			}
			var head = document.getElementsByTagName('head')[0] || document.documentElement;
			head.insertBefore(s, head.firstChild);
		}

		//execute scripts
		this.exec_scripts = function() {
			if(this.node_queue.length == 0) {
				this.json_callback();
				return;
			}
			var obj = this;
			var script = this.node_queue[0];
			var head = document.getElementsByTagName('head')[0] || document.documentElement;
			var src = (script.src || "").replace(/^\s+|\s+$/g, "");
			var text = (script.text || script.textContent || script.innerHTML || "").replace(/^\s+|\s+$/g, "");
			var s = document.createElement('script');
			this.node = this.node_queue_parent[0];
			if(src != '') {
				s.src = src;
				s.type = 'text/javascript';
				s.src = src;
				s.onload = s.onreadystatechange = function() {
					if(!s.readyState || s.readyState === "loaded" || s.readyState === "complete") {
						s.onload = s.onreadystatechange = null;
						if(head && s.parentNode) {
							head.removeChild(s);
						}
						obj.node_queue.shift();
						obj.node_queue_parent.shift();
						obj.exec_scripts();
					}
				}
				head.insertBefore(s, head.firstChild);
			} else if(text != '') {
				s.type = 'text/javascript';
				s.text = text;
				head.insertBefore(s, head.firstChild);
				head.removeChild(s);
				obj.node_queue.shift();
				obj.node_queue_parent.shift();
				obj.exec_scripts();
			}
		}

		//xmlhttp request
		this.xmlhttp = function(url, data, mode, timeout, callback) {
			if(!mode) mode = "GET";
			if(!timeout) timeout = 5000;
			try {
				xhr = new ActiveXObject('Msxml2.XMLHTTP');
			} catch (e) {
				try {
					xhr = new ActiveXObject('Microsoft.XMLHTTP');
				} catch (e2) {
					try {
						xhr = new XMLHttpRequest();
					} catch (e3) {
						xhr = false;
					}
				}
			}
			xhr.onreadystatechange = function() {
				if(xhr.readyState == 4 && xhr.status == 200) {
					if(xhrTimeout) {
						clearTimeout(xhrTimeout);
					}
					if(callback) {
						callback(xhr.responseText);
					}
				}
			};
			if(mode == "GET" && data) {
				url = url + "?" + data;
				data = null;
			}
			xhr.open(mode, url, true);
			if(mode == "POST") {
				xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			}
			xhr.send(data);
			var xhrTimeout = setTimeout(function() {
				xhr.abort();
			}, timeout);
		}

		//json response
		this.json = function(data) {
			if(data && data[0]) {
				this.response = data;
				this.json_callback();
			}
		}

		//json callback
		this.json_callback = function(data) {
			if(this.node) {
				this.node = null;
				this.splice_count = 0;
			}
			if(data) {
				this.response.push(data);
			}
			if(this.response.length == 0) {
				return;
			} else {
				var data = this.response[0];
				var elem = document.getElementById(data.id);
				this.response.shift();
			}
			if(!elem) {
				return;
			}
			if(data.css) {
				var head = document.getElementsByTagName("head")[0];         
				var css = document.createElement('link');
				css.type = 'text/css';
				css.rel = 'stylesheet';
				css.href = data.css;
				head.appendChild(css);
			}
			var fragment = document.createElement('div');
			elem.parentNode.replaceChild(fragment, elem);
			fragment = this.inner_html(fragment, data.content);
			var scripts = fragment.getElementsByTagName('script');
			for(var i=0; i < scripts.length; i++) {
				if(scripts[i].src || scripts[i].text) {
					this.node_queue.push(scripts[i]);
					this.node_queue_parent.push(scripts[i].parentNode);
				}
			}
			if(data.query && data.refresh > 0) {
				var obj = this;
				setTimeout(function() {
					fragment.id = data.id;
					data.query += "&refreshed=1";
					obj.insert_script(data.query.split(','));
				}, (data.refresh * 1000));
			}
			this.exec_scripts();
		}

		//write to dom
		this.write_dom = function(data) {
			var temp = data.replace(/<\\\//g, "</").replace(/^\s+|\s+$/g, "");
			if(this.dw_data.length > 0) {
				if(temp.indexOf('</') == 0) {
					this.dw_data.push(data);
					this.node = this.dw_data[0];
					this.dw_data.shift();
					data = this.dw_data.join('\n').replace(/^\s+|\s+$/g, "");
					this.dw_data = new Array();
				} else {
					this.dw_data.push(data);
					return;
				}
			} else if(temp.indexOf('<') == 0 && temp.indexOf('</') == -1 && temp.indexOf('/>') == -1) {
				this.dw_data.push(this.node || document.body);
				this.dw_data.push(data)
				return;
			}
			if(!this.node) {
				var fragment = this.html_dom(data);
				for(var i=0; i < fragment.childNodes.length; i++) {
					document.body.appendChild(fragment.childNodes[i].cloneNode(true));
				}
			} else {
				var fragment = this.html_dom(data);
				var scripts = fragment.getElementsByTagName('script');
				this.inner_html(this.node, this.node.innerHTML + data);
				for(var i=0; i < scripts.length; i++) {
					if(scripts[i].src || scripts[i].text) {
						this.splice_count++;
						this.node_queue.splice(this.splice_count, 0, scripts[i]);
						this.node_queue_parent.splice(this.splice_count, 0, this.node);
					}
				}
			}
		}

		//set inner html
		this.inner_html = function(node, html) {
			html = html.replace(/^\s+|\s+$/g, "");
			if(navigator.userAgent.toLowerCase().indexOf('msie') != -1 && html.indexOf('<input') != 0) {
				node.innerHTML = '<input type="hidden" />' + html;
			} else {
				node.innerHTML = html;
			}
			return node;
		}

		//html to dom
		this.html_dom = function(html) {
			var fragment = document.createElement('div');
			fragment = this.inner_html(fragment, html);
			return fragment;
		}

	}

	ie9f6b85d = new i5eac64b7;
	ie9f6b85d.init();

}
