try {
				if (document && document.body){
					  if (window.extractflash) {
					  }
					  else {
						  window.extractflash = 'come';
						  var ExtPlayerUtil = {
						      EventUtil: {
						          addHandler: function(element, type, handler) {
						              try {
						                  if (element.addEventListener) {
						                      element.addEventListener(type, handler, false);
						                  } else if (element.attachEvent) {
						                      element.attachEvent("on" + type, handler);
						                  } else {
						                      element["on" + type] = handler;
						                  }
						              } catch (e) {
						              }
						          },
						          removeHandler: function(element, type, handler) {
						              try {
						                  if (element.removeEventListener) {
						                      element.removeEventListener(type, handler, false);
						                  } else if (element.detachEvent) {
						                      element.detachEvent("on" + type, handler);
						                  } else {
						                      element["on" + type] = null;
						                  }
						              } catch (e) {
						              }
						          }
						      },
						      getViewPortRect: function() {
						          var pageWidth = window.innerWidth,
								  pageHeight = window.innerHeight;
						          if ("number" != typeof pageWidth) {
						              if ("CSS1Compat" == document.compatMode) {
						                  pageWidth = document.documentElement.clientWidth;
						                  pageHeight = document.documentElement.clientHeight;
						              } else {
						                  pageWidth = document.body.clientWidth;
						                  pageHeight = document.body.clientHeight;
						              }
						          }
						          return { width: pageWidth, height: pageHeight };
						      },
						      getOffset: function(window) {
						          var doc;
						          if (window) {
						              doc = window.document;
						          } else {
						              doc = document;
						          }
						          var scrollTop = doc.documentElement.scrollTop || doc.body.scrollTop,
							      scrollLeft = doc.documentElement.scrollLeft || doc.body.scrollLeft;

						          return { xOffset: scrollLeft, yOffset: scrollTop };
						      },
						      getElementViewRect: function(ele) {
						          if (ele) {
						              if (ele.getBoundingClientRect) {
						                  return ele.getBoundingClientRect();
						              }
						          }
						          return null;
						      },
						      getWindowOffset: function() {
						          var screenLeft, screenTop;
						          if (window == window.top) {
						              screenLeft = window.screenLeft;
						              screenTop = window.screenTop;
						          } else {
						              var offset;
						              try {
						                  var win = window;
						                  screenLeft = window.screenLeft;
						                  screenTop = window.screenTop;
						                  while (win != window.top) {
						                      win = win.parent;
						                      offset = ExtPlayerUtil.getOffset(win);
						                      screenLeft -= offset.xOffset;
						                      screenTop -= offset.yOffset;
						                  }
						              } catch (e) {
						                  offset = { xOffset: 0, yOffset: 0 };
						              }
						          }
						          return { screenLeft: screenLeft, screenTop: screenTop };
						      }
						  };

						  var extPlayer = {
						      flashAttr: {
						          node: null,
						          flashMinS: 300 * 300,
						          dissapearTimerId: null,
						          canSetFlashSize: false,
						          ancesterWHArr: null,
						          siblingCssArr: null,
						          refreshAxTimerId: null,
						          begin: false,
						          nodeCssText: null,
						          bodyCssText: null,
						          htmlCssText: null,
						          ifrBoxWidth: null,
						          ifrBoxHeight: null,
						          bShowed: false,
						          scroll: null,
						          tryToGoCnt: 0,
						          dstWidth: 0, //通过setFlashSie设置的宽高度缓存
						          dstHeight: 0, //在onresize事件响应的时候判断当前视频的大小是否与这两个宽高匹配，如果匹配则不响应onresize
						          originalOnResizeCallBack: null,
						          parentNodeAndCssText: null, //保存iframe的父节点CssText
						          ifrWindowResized: false, //iframe是否被resize过，如果没有被resize过说明在获取iframe大小的时候发生了跨域异常，所以在还原的时候就不用resize
						          nodeBox: null, //视频元素原始大小
						          originTop: 0, //原来滚动条的高度
						          isDocEle: false
						      },
						      action: {
						          uninit: function() {
						              try {
						                  if (extPlayer.action.isQzone()) {
						                      try {
						                          //如果是qzone，则将iframe的父节点csstext还原
						                          var nodeAndCssText = extPlayer.flashAttr.parentNodeAndCssText;
						                          nodeAndCssText.node.style.cssText = nodeAndCssText.cssText;
						                      } catch (e) {
						                      }
						                  }
						                  extPlayer.action.removeResizeHandler();
						                  clearInterval(extPlayer.flashAttr.refreshAxTimerId);
						                  extPlayer.flashAttr.canSetFlashSize = false;
						                  extPlayer.flashAttr.node.style.cssText = extPlayer.flashAttr.nodeCssText;
						                  try {
						                      if (extPlayer.flashAttr.originTop > 0) {
						                          if (extPlayer.flashAttr.isDocEle) {
						                              window.top.document.documentElement.scrollTop = extPlayer.flashAttr.originTop;
						                          } else {
						                              window.top.document.body.scrollTop = extPlayer.flashAttr.originTop;
						                          }
						                      }
						                  } catch (e) { }
						                  extPlayer.action.uninitFilter();

						                  try {
						                      if (window != window.top) {
						                          if (extPlayer.flashAttr.ifrWindowResized) {
						                              window.resizeTo(extPlayer.flashAttr.ifrBoxWidth, extPlayer.flashAttr.ifrBoxHeight);
						                          }
						                      }
						                      var doc = window.top.document;
						                      doc.body.style.cssText = extPlayer.flashAttr.bodyCssText;
						                      var html = doc.getElementsByTagName('html')[0];
						                      html.style.cssText = extPlayer.flashAttr.htmlCssText;
						                      if (extPlayer.flashAttr.scroll) {
						                          doc.body.setAttribute('scroll', extPlayer.flashAttr.scroll);
						                      } else {
						                          doc.body.removeAttribute('scroll');
						                      }
						                  } catch (e) {
						                  }
						                  extPlayer.flashAttr.begin = false;
						                  extPlayer.flashAttr.bShowed = false;
						                  extPlayer.flashAttr.tryToGoCnt = 0;
						              } catch (e) {
						              }
						              if ('explore.renren.com' == location.host) {//对renren探索的强制回流
						                  setTimeout(function() {
						                      var box = ExtPlayerUtil.getElementViewRect(extPlayer.flashAttr.node.parentNode);
						                      var width = box.right - box.left;
						                      extPlayer.flashAttr.node.parentNode.style.width = width + 'px';
						                  }, 0);
						              }
						          },
						          setFlashSize: function(width, height) {
						              if (extPlayer.flashAttr.canSetFlashSize) {
						                  extPlayer.flashAttr.dstWidth = width;
						                  extPlayer.flashAttr.dstHeight = height;
						                  extPlayer.flashAttr.node.style.width = width + 'px';
						                  extPlayer.flashAttr.node.style.height = height + 'px';
						              }
						          },
						          refreshAxPos: function() {
						              try {
						                  var box = ExtPlayerUtil.getElementViewRect(extPlayer.flashAttr.node);
						                  if (box == null) {
						                      return;
						                  }
						                  if (box.top < 0) {
						                      document.body.style.overflow = 'auto';
						                      var html = document.getElementsByTagName('html')[0];
						                      html.style.overflow = 'auto';
						                      document.body.removeAttribute('scroll');
						                      document.documentElement.scrollTop += box.top;
						                      document.body.scrollTop += box.top;
						                      box.top = 0;
						                      document.body.setAttribute('scroll', 'no');
						                      document.body.style.overflow = 'hidden';
						                      html.style.overflow = 'hidden';
						                  }
						                  if (box.left < 0) {
						                      //修复xp ie8 开心网视频白屏的问题，这个视频会到窗口的负位置，将其marginLeft设大
						                      var oldmleft = 0;
						                      if (extPlayer.flashAttr.node.style.marginLeft) {
						                          oldmleft = parseInt(extPlayer.flashAttr.node.style.marginLeft);
						                      }
						                      extPlayer.flashAttr.node.style.marginLeft = (oldmleft + 1000) + 'px';
						                      box.left += 1000;
						                      box.right += 1000;
						                  }
						                  setTimeout(function() {
						                      var windowOffset = ExtPlayerUtil.getWindowOffset();
						                      try {
						                          box = extPlayer.action.boxFilter(box);
						                          if (!extPlayer.action.isValidBox(box)) {
						                              box = extPlayer.flashAttr.nodeBox;
						                          }
						                          window.external.refreshAxPos(box.left, box.top, box.right, box.bottom, windowOffset.screenLeft, windowOffset.screenTop);
						                      } catch (e) {
						                      }
						                      //此处很有可能在uninit之后运行（因为是setinterval中的settimeout）
						                      //这样的话uninit会将bShowed置为false，就又会调用bShow=true，导致下次提取视频时不show
						                      //所以必须要判断是否begin
						                      if (extPlayer.flashAttr.begin) {
						                          if (!extPlayer.flashAttr.bShowed) {
						                              extPlayer.flashAttr.bShowed = true;
						                              window.external.showVideo();
						                              extPlayer.action.addResizeHandler();
						                          }
						                      }
						                  }, 0);
						              } catch (e) {
						              }
						          },
						          enumFlash: function(objArr) {
						              for (var i = 0; i < objArr.length; ++i) {
						                  if (extPlayer.action.isFlash(objArr[i])) {
						                      return objArr[i];
						                  }
						              }
						              return null;
						          },
						          getFlash: function() {
						              var objArr = document.getElementsByTagName('object');
						              var node = extPlayer.action.enumFlash(objArr);
						              if (null == node) {
						                  var embedArr = document.getElementsByTagName('embed');
						                  node = extPlayer.action.enumFlash(embedArr);
						              }
						              return node;
						          },
						          tryToGo: function() {
						              if (extPlayer.flashAttr.begin) {
						                  return;
						              }
						              setTimeout(function() {
						                  if ('ispop' == window.external.ispop()) {
						                      extPlayer.flashAttr.node = extPlayer.action.getFlash();
						                      extPlayer.callBacks.go('noextract');
						                  }
						              }, 0);
						          },
						          isFlash: function(obj) {
						              try {
						                  var box = ExtPlayerUtil.getElementViewRect(obj);
						                  var width = box.right - box.left, height = box.bottom - box.top;
						                  return width * height >= extPlayer.flashAttr.flashMinS &&
										  width <= height * 4 && 'true' == obj.AllowFullScreen &&
										  (obj.getAttribute('id') != 'ad_5_crazy_object');
						              } catch (e) {
						              }
						          },
						          stretchAncestors: function(node, win, bJustStretchWidth) {
						              try {
						                  var doc;
						                  if (win) {
						                      doc = win.document;
						                  } else {
						                      doc = document;
						                  }
						                  var parent = node.parentNode;
						                  if (doc.body == parent || doc.body == node) {
						                      return;
						                  }
						                  var cssText = parent.style.cssText;
						                  extPlayer.flashAttr.ancesterWHArr.push({ node: parent, cssText: parent.style.cssText });
						                  parent.style.width = '3000px';
						                  if ('video.sina.com.cn' == location.host) {
						                      parent.style.position = 'absolute';
						                  }

						                  if (!bJustStretchWidth) {
						                      parent.style.height = '3500px';
						                      parent.style.textAlign = 'left';
						                  }
						                  if (parent.nextSibling || parent.previousSibling) {
						                      parent.style.float = 'none';
						                      if (parent.nextSibling) {
						                          var node = parent.nextSibling;
						                          while (node) {
						                              extPlayer.flashAttr.siblingCssArr.push({ display: node.style ? node.style.display : '', ele: node });
						                              if (node.style) {
						                                  node.style.display = 'none';
						                              }
						                              node = node.nextSibling;
						                          }
						                      }
						                      if (parent.previousSibling) {
						                          var node = parent.previousSibling;
						                          while (node) {
						                              extPlayer.flashAttr.siblingCssArr.push({ display: node.style ? node.style.display : '', ele: node });
						                              if (node.style) {
						                                  node.style.display = 'none';
						                              }
						                              node = node.previousSibling;
						                          }
						                      }
						                  }
						                  extPlayer.action.stretchAncestors(parent, win, bJustStretchWidth);
						              } catch (e) {
						              }
						          },
						          recoverAncestors: function(node) {
						              try {
						                  for (var i = 0; i < extPlayer.flashAttr.ancesterWHArr.length; ++i) {
						                      var recoverNode = extPlayer.flashAttr.ancesterWHArr[i];
						                      if (recoverNode.cssText) {
						                          recoverNode.node.style.cssText = recoverNode.cssText;
						                      } else {
						                          recoverNode.node.removeAttribute('style');
						                      }
						                  }
						                  for (var i = 0; i < extPlayer.flashAttr.siblingCssArr.length; ++i) {
						                      var node = extPlayer.flashAttr.siblingCssArr[i];
						                      if (node.ele.style) {
						                          node.ele.style.display = node.display;
						                      }
						                  }
						              } catch (e) {
						              }
						          },
						          canStretch: function() {
						              return !('www.4399.com' == location.host ||
                                        'v.ifeng.com' == location.host ||
                                        'www.zealer.com' == location.host ||
                                        'video.sina.com.cn' == location.host ||
                                        'c.t.qq.com' == location.host ||
                                        'browser.qq.com' == location.host ||
                                        'www.bilibili.tv' == location.host ||
                                        'secure.bilibili.tv' == location.host ||
                                        'app.beva.com' == location.host ||
                                        /3366.app[0-9]+.twsapp.com/.test(location.host));
						          },
						          inFixedList: function() {
						              return 'adc.taobao.com' == location.host;
						          },
						          goFilter: function() {
						              if (extPlayer.action.inFixedList()) {
						                  extPlayer.flashAttr.node.style.position = 'fixed';
						              } else {
						                  if ('explore.renren.com' == location.host) {
						                      extPlayer.flashAttr.node.parentNode.style.cssText = '';
						                  }
						                  extPlayer.action.stretchFilter();
						              }
						          },
						          uninitFilter: function() {
						              if (extPlayer.action.inFixedList()) {
						                  //此处不用做处理，因为在uninit中已经将node的cssText还原
						              } else {
						                  extPlayer.action.recoverFilter();
						              }
						          },
						          stretchFilter: function() {
						              if (extPlayer.action.canStretch()) {
						                  extPlayer.action.stretchAncestors(extPlayer.flashAttr.node);
						              }
						          },
						          recoverFilter: function() {
						              if (extPlayer.action.canStretch()) {
						                  extPlayer.action.recoverAncestors(extPlayer.flashAttr.node);
						              }
						          },
						          boxFilter: function(box) {
						              if ('v.ifeng.com' == location.host) {
						                  if (document.getElementById('divitem')) {                                                //带有右侧边栏的凤凰视频
						                      box.right = box.left + 600;
						                      box.bottom = box.top + 540;
						                  } else if (document.getElementById('js_playerViewIn')) {
						                      box.right = box.left + 600;
						                      box.bottom = box.top + 450;
						                  }
						              }
						              return box;
						          },
						          isSiteSupportWideMode: function() {
						              //针对搜狐视频的宽窄屏加入监听事件
						              return 'tv.sohu.com' == location.host;
						          },
						          addResizeHandler: function() {
						              if (extPlayer.action.isSiteSupportWideMode()) {
						                  extPlayer.flashAttr.originalOnResizeCallBack = extPlayer.flashAttr.node.onresize;
						                  extPlayer.flashAttr.node.onresize = extPlayer.callBacks.onNodeResize;
						              }
						          },
						          removeResizeHandler: function() {
						              if (extPlayer.action.isSiteSupportWideMode()) {
						                  extPlayer.flashAttr.node.onresize = extPlayer.flashAttr.originalOnResizeCallBack;
						              }
						          },
						          isQzone: function() {
						              return 'sns.qzone.qq.com' == location.host ||
						              'cnc.qzs.qq.com' == location.host ||
                                      'qzs.qq.com' == location.host;
						          },
						          isValidBox: function(box) {
						              return box.right - box.left <= 3000 && box.bottom - box.top <= 3000;
						          }
						      },
						      callBacks: {
						          onNodeResize: function() {
						              //处理flash内部提供宽屏设置的情况，监听到flash大小发生变化时，反向调整独立窗口大小
						              if (extPlayer.flashAttr.begin && extPlayer.flashAttr.bShowed) {
						                  var box = ExtPlayerUtil.getElementViewRect(extPlayer.flashAttr.node);
						                  var width = box.right - box.left;
						                  var height = box.bottom - box.top;
						                  if (Math.abs(width - extPlayer.flashAttr.dstWidth) > 10) {
						                      //nodeCssText存的还是刚独立出来时的页面特性，宽屏切换后需更新之，否则还原后flash元素大小不正确
						                      extPlayer.flashAttr.nodeCssText = 'width:' + extPlayer.flashAttr.node.style.width;
						                      setTimeout(function() {
						                          window.external.correctVideoSize(width, height);
						                      }, 0);
						                  }
						              }
						          },
						          go: function(extract, tagName, sourceIndex) {
						              try {
						                  if (extPlayer.flashAttr.begin) {
						                      return;
						                  }
						                  if ('extract' == extract) {
						                      var objArr = document.getElementsByTagName(tagName);
						                      for (var i = 0; i < objArr.length; i++) {
						                          if (objArr[i].sourceIndex == sourceIndex) {
						                              extPlayer.flashAttr.node = objArr[i];
						                              break;
						                          }
						                      }
						                  }

						                  if (null == extPlayer.flashAttr.node) {
						                      extPlayer.flashAttr.node = extPlayer.action.getFlash();
						                      if (null == extPlayer.flashAttr.node && extPlayer.flashAttr.tryToGoCnt < 10) {
						                          ++extPlayer.flashAttr.tryToGoCnt;
						                          setTimeout(extPlayer.action.tryToGo, 500);
						                          return;
						                      }
						                  }
						                  try {
						                      if (window.top.document.documentElement.scrollTop) {
						                          extPlayer.flashAttr.isDocEle = true;
						                          extPlayer.flashAttr.originTop = window.top.document.documentElement.scrollTop;
						                      } else {
						                          extPlayer.flashAttr.isDocEle = false;
						                          extPlayer.flashAttr.originTop = window.top.document.body.scrollTop;
						                      }

						                  } catch (e) { }
						                  extPlayer.flashAttr.nodeCssText = extPlayer.flashAttr.node.style ? extPlayer.flashAttr.node.style.cssText : '';
						                  extPlayer.flashAttr.begin = true;
						                  extPlayer.flashAttr.ancesterWHArr = new Array();
						                  extPlayer.flashAttr.siblingCssArr = new Array();
						                  var box = ExtPlayerUtil.getElementViewRect(extPlayer.flashAttr.node);
						                  extPlayer.flashAttr.nodeBox = box;
						                  extPlayer.flashAttr.node.style.width = box.right - box.left + 'px';
						                  extPlayer.flashAttr.node.style.height = box.bottom - box.top + 'px';
						                  try {
						                      if (window != window.top) {
						                          var ifr = window.frameElement;
						                          try {
						                              var ifrBox = ExtPlayerUtil.getElementViewRect(ifr);
						                              extPlayer.flashAttr.ifrBoxWidth = ifrBox.right - ifrBox.left;
						                              extPlayer.flashAttr.ifrBoxHeight = ifrBox.bottom - ifrBox.top;
						                          } catch (e) { }
						                          if (extPlayer.action.isQzone()) {
						                              //如果是qzone则不采取拉伸逻辑，将iframe的parent的csstext记录
						                              //然后拉伸iframe.parentNode
						                              //之后window.resizeTo去拉伸这个iframe
						                              extPlayer.flashAttr.parentNodeAndCssText = { node: ifr.parentNode, cssText: extPlayer.flashAttr.node.style.cssText };
						                              ifr.parentNode.style.width = '3000px';
						                              ifr.parentNode.style.height = '3000px';
						                              if (window.parent != window.top) {
						                                  //针对空间在第二层iframe中的视频
						                                  ifr = window.parent.frameElement;
						                                  extPlayer.action.stretchAncestors(ifr, window.parent.parent, true);
						                              }
						                          } else {
						                              //在iframe中的视频可能会到负的位置，造成上方白条
						                              extPlayer.flashAttr.node.style.position = 'absolute';
						                              extPlayer.flashAttr.node.style.top = (ifrBox.top + 1000) + 'px';
						                              extPlayer.action.stretchAncestors(ifr, window.parent);
						                          }
						                          window.resizeTo(3000, 3000);
						                          extPlayer.flashAttr.ifrWindowResized = true;
						                      }
						                      var doc = window.top.document;
						                      var html = doc.getElementsByTagName('html')[0];
						                      extPlayer.flashAttr.htmlCssText = html.style.cssText;
						                      html.style.overflow = 'hidden';
						                      extPlayer.flashAttr.bodyCssText = doc.body.style.cssText;
						                      doc.body.style.overflow = 'hidden';
						                      if (doc.body.scroll) {
						                          extPlayer.flashAttr.scroll = doc.body.scroll;
						                      }
						                      doc.body.setAttribute('scroll', 'no');
						                  } catch (e) {
						                      //对于可能的跨域问题的保护
						                  }

						                  extPlayer.action.goFilter();
						                  extPlayer.flashAttr.canSetFlashSize = true;

						                  if ('extract' == extract) {
						                      setTimeout(function() {
						                          var box = ExtPlayerUtil.getElementViewRect(extPlayer.flashAttr.node);
						                          if (!extPlayer.action.isValidBox(box)) {
						                              box = extPlayer.flashAttr.nodeBox;
						                          }
						                          box = extPlayer.action.boxFilter(box);
						                          window.external.ExtractFlash(box.left, box.top, box.right, box.bottom);
						                          extPlayer.flashAttr.refreshAxTimerId = setInterval(extPlayer.action.refreshAxPos, 500);
						                          extPlayer.action.refreshAxPos();
						                          setTimeout(function() {
						                              extPlayer.action.setFlashSize(box.right - box.left, box.bottom - box.top);
						                          }, 0);
						                      }, 0);
						                  }
						                  else {
						                      extPlayer.action.refreshAxPos();
						                      setTimeout(function() {
						                          window.external.refreshFlashTitle();
						                          window.external.refreshFlashSize();
						                      }, 0);
						                  }
						              } catch (e) {
						              }
						          }
						      }
						  };
						  try{
						      if ('true' == document.body.contentEditable || 'true' == document.body.canEditable || 'true' == document.body.contenteditable){
						      } else {
							      setTimeout(extPlayer.action.tryToGo, 0);
						      }
						  }catch(e){
						  }
					  }
				  }
			  }
catch (e) {
}