{"version":3,"file":"backbone-min.js","sources":["backbone.js"],"names":["factory","root","self","global","define","amd","_","$","exports","Backbone","require","e","jQuery","Zepto","ender","previousBackbone","slice","VERSION","noConflict","this","emulateHTTP","emulateJSON","addMethod","length","method","attribute","value","iteratee","context","defaultVal","args","call","arguments","unshift","apply","addUnderscoreMethods","Class","methods","each","prototype","Events","eventSplitter","eventsApi","memo","name","callback","opts","i","names","keys","test","split","on","internalOn","obj","listening","_events","onApi","ctx","listeners","_listeners","id","listenTo","_listenId","uniqueId","listeningTo","_listeningTo","thisId","objId","count","events","options","handlers","push","off","offApi","stopListening","ids","isEmpty","remaining","j","handler","_callback","size","once","onceMap","bind","listenToOnce","map","offer","trigger","Math","max","Array","triggerApi","objEvents","cb","allEvents","all","triggerEvents","concat","ev","l","a1","a2","a3","unbind","extend","Model","attributes","attrs","cid","cidPrefix","collection","parse","defaults","result","set","changed","initialize","validationError","idAttribute","toJSON","clone","sync","get","attr","escape","has","matches","key","val","_validate","unset","silent","changes","changing","_changing","_previousAttributes","current","prev","isEqual","_pending","clear","hasChanged","changedAttributes","diff","old","previous","previousAttributes","fetch","model","success","resp","serverAttrs","wrapError","save","validate","wait","isNew","patch","xhr","destroy","defer","url","base","urlError","replace","encodeURIComponent","constructor","isValid","error","modelMethods","values","pairs","invert","pick","omit","chain","Collection","models","comparator","_reset","reset","setOptions","add","remove","merge","addOptions","singular","isArray","removed","_removeModels","_isModel","existing","sort","at","sortable","sortAttr","isString","toAdd","toRemove","modelMap","order","orderChanged","_prepareModel","_addReference","modelId","splice","orderedModels","addOpts","index","_removeReference","previousModels","pop","shift","_byId","where","first","findWhere","Error","sortBy","pluck","invoke","create","callbackOpts","indexOf","_onModelEvent","event","prevId","collectionMethods","forEach","collect","reduce","foldl","inject","reduceRight","foldr","find","detect","filter","select","reject","every","some","any","include","contains","min","toArray","head","take","initial","rest","tail","drop","last","without","difference","shuffle","lastIndexOf","sample","partition","attributeMethods","iterator","isFunction","View","viewOptions","_ensureElement","delegateEventSplitter","tagName","selector","$el","render","_removeElement","setElement","element","undelegateEvents","_setElement","delegateEvents","el","match","delegate","eventName","listener","undelegate","_createElement","document","createElement","className","_setAttributes","type","methodMap","params","dataType","data","contentType","JSON","stringify","_method","beforeSend","setRequestHeader","processData","textStatus","errorThrown","ajax","update","delete","read","Router","routes","_bindRoutes","optionalParam","namedParam","splatParam","escapeRegExp","route","isRegExp","_routeToRegExp","router","history","fragment","_extractParameters","execute","navigate","optional","RegExp","exec","param","decodeURIComponent","History","bindAll","window","location","routeStripper","rootStripper","pathStripper","started","interval","atRoot","path","pathname","getSearch","matchRoot","decodeFragment","decodeURI","href","getHash","getPath","charAt","getFragment","_usePushState","_wantsHashChange","start","hashChange","_hasHashChange","_useHashChange","_wantsPushState","pushState","_hasPushState","iframe","src","style","display","tabIndex","body","iWindow","insertBefore","firstChild","contentWindow","open","close","hash","addEventListener","attachEvent","checkUrl","_checkUrlInterval","setInterval","loadUrl","stop","removeEventListener","detachEvent","removeChild","clearInterval","title","_updateHash","assign","protoProps","staticProps","parent","child","Surrogate","__super__"],"mappings":"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"}