(function() { var require,define; (function(){var modules={};var requireStack=[];var inProgressModules={};var nativePrefix=function(){var ua=navigator.userAgent.toLowerCase();var isNative=ua.indexOf("hybrid")!=-1;if(isNative){if(ua.indexOf("ipad")!=-1||ua.indexOf("iphone")!=-1)return"iOS";if(ua.indexOf("android")!=-1)return"Android"}return null}();function build(module){var factory=module.factory;var localRequire=require;module.exports=createBaseModule(module);delete module.factory;factory(localRequire,module.exports,module);if(nativePrefix){var nativeModuleID= module.id+"/Native";var nativeModule=modules[nativeModuleID];if(!nativeModule&&module.options&&module.options.autoGenerateNative)nativeModule=autoGenerateNative(factory,module.options);if(nativeModule){nativeModule.factory(localRequire,module.exports,module);delete nativeModule.factory}var platformModuleID=module.id+"/"+nativePrefix;var platformModule=modules[platformModuleID];if(platformModule){platformModule.factory(localRequire,module.exports,module);delete platformModule.factory}}if(module.exports&& module.exports.init&&typeof module.exports.init==="function")module.exports.init();return module.exports}function createBaseModule(module){var exports={};exports.isNative=false;exports.supports=function(functionName,callback){if(callback)callback(false)};return exports}function autoGenerateNative(nativeModuleID,options){var generatedFactory=function(require,exports,module){var bridge=require("Bridge");for(var prop in exports)(function(){var currentProp=prop;var func=exports[currentProp];if(func&& typeof func==="function"){var STRIP_COMMENTS=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg;var ARGUMENT_NAMES=/([^\s,]+)/g;var fnStr=func.toString().replace(STRIP_COMMENTS,"");var paramNames=fnStr.slice(fnStr.indexOf("(")+1,fnStr.indexOf(")")).match(ARGUMENT_NAMES);if(paramNames===null)paramNames=[];exports[currentProp]=function(){var callback=null;var parameters={};for(var i=0;i")+"->"+id;throw"Cycle in require graph: "+cycle;}if(modules[id].factory)try{inProgressModules[id]=requireStack.length;requireStack.push(id);return build(modules[id])}finally{delete inProgressModules[id]; requireStack.pop()}return modules[id].exports};define=function(id,options,factory){if(modules[id])throw"module "+id+" already defined";modules[id]={id:id,options:options,factory:factory};return modules[id]};define.remove=function(id){delete modules[id]};define.moduleMap=modules})();define("Utils",{},function(require,exports,module){exports.isMobile=function(){var ua=navigator.userAgent.toLowerCase();var keywords="(iphone;android;midp;240x320;blackberry;netfront;nokia;panasonic;portalmmm;sharp;sie-;sonyericsson;symbian;windows ce;benq;mda;mot-;opera mini;philips;pocket pc;sagem;samsung;htc".split(";");var keyword;for(keyword in keywords)if(-1!=ua.indexOf(keywords[keyword]))return true;return false};exports.isMobileApp=function(){var ua=navigator.userAgent.toLowerCase();return ua.indexOf("hybrid")!= -1};exports.loadScript=function(scriptURL,callback){var scriptLoaded=false;function onScriptLoaded(){if(!scriptLoaded){scriptLoaded=true;callback()}}var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.type="text/javascript";script.async=true;script.onreadystatechange=function(){if(this.readyState=="complete")onScriptLoaded()};script.onload=onScriptLoaded;script.src=scriptURL;head.appendChild(script)};exports.extend=function(){var F=function(){};return function(Child, Parent){F.prototype=Parent.prototype;Child.prototype=new F;Child.__super__=Parent.prototype;Child.prototype.constructor=Child}}();exports.createUUID=function(){function createPart(length){var uuidpart="";for(var i=0;i