<commit_before>/**
 * Async JavaScript Loader
 * https://github.com/th507/asyncJS
 *
 * Load every bit of JavaScript asynchronously
 * include inline script
 *
 * @author Jingwei "John" Liu <<EMAIL>>
 */

(function(name, context) {
    /*jshint plusplus:false, curly:false, bitwise:false*/
    "use strict";

    // some useful shims and variables
    var dataURIPrefix = "data:application/javascript,";

    // detect Data URI support
    var supportDataURI = true;

    /*
     * As much as I love to use a semantic way to
     * detect Data URI support, all the detection
     * methods I could think of are asynchronous,
     * which makes them less reliable when calling
     * asyncJS immediately after its instantiation
     */

    // IE 7 or below does not support Data URI.
    // NodeJS does not have navigator
    if(
        navigator &&
        (navigator.appName !== 'ie') &&
        (navigator.appVersion < 8)
    ) {
        // In IE 8, while Data URI is supported,
        // the maximum URI length is limited to 32kB
        supportDataURI = false;
    }

     /**
     * @private
     * @name getCutoffLength
     * Get cut-off length for iteration
     *
     * @param {Array}  arr
     * @param {Number} cutoff
     */
    function getCutoffLength(arr, cutoff) {
        //because AsyncQueue#then could add sync task at any time
        // we must read directly from this.tasks.length
        var length = arr.length;
        if (~cutoff && cutoff < length) length = cutoff;
        return length;
    }

    /**
     * @private
     * @name later
     * Run callback asynchronously
     *
     * @param {Function} fn
     */
    // This is use for multiple purposes (not good).
    // Sometimes just for async flow
    // sometimes we do need to execute
    // after a period of time.
    // TODO: maybe use postmessage ?
    // http://jsperf.com/postmessage/15

    // 1000 / 60 = 50 / 3
    var later = function(fn) { setTimeout(fn, 50 / 3); };

    /**
     * @private<commit_msg>update slogan<commit_after>/**
 * Async JavaScript Loader
 * https://github.com/th507/asyncJS
 *
 * Slightly Deferent JavaScript loader and dependency manager
 *
 * @author Jingwei "John" Liu <<EMAIL>>
 */

(function(name, context) {
    /*jshint plusplus:false, curly:false, bitwise:false*/
    "use strict";

    // some useful shims and variables
    var dataURIPrefix = "data:application/javascript,";

    // detect Data URI support
    var supportDataURI = true;

    /*
     * As much as I love to use a semantic way to
     * detect Data URI support, all the detection
     * methods I could think of are asynchronous,
     * which makes them less reliable when calling
     * asyncJS immediately after its instantiation
     */

    // IE 7 or below does not support Data URI.
    // NodeJS does not have navigator
    if(
        navigator &&
        (navigator.appName !== 'ie') &&
        (navigator.appVersion < 8)
    ) {
        // In IE 8, while Data URI is supported,
        // the maximum URI length is limited to 32kB
        supportDataURI = false;
    }

     /**
     * @private
     * @name getCutoffLength
     * Get cut-off length for iteration
     *
     * @param {Array}  arr
     * @param {Number} cutoff
     */
    function getCutoffLength(arr, cutoff) {
        //because AsyncQueue#then could add sync task at any time
        // we must read directly from this.tasks.length
        var length = arr.length;
        if (~cutoff && cutoff < length) length = cutoff;
        return length;
    }

    /**
     * @private
     * @name later
     * Run callback asynchronously
     *
     * @param {Function} fn
     */
    // This is use for multiple purposes (not good).
    // Sometimes just for async flow
    // sometimes we do need to execute
    // after a period of time.
    // TODO: maybe use postmessage ?
    // http://jsperf.com/postmessage/15
    var later = function(fn) { setTimeout(fn, 50 / 3); };

    /**
     * @private
{'fraction_non_alphanumeric': 0.10213836477987422, 'fraction_numerical': 0.00880503144654088, 'mean_word_length': 2.1038251366120218, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 7, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2170748', 'n_tokens_mistral': 1181, 'n_tokens_neox': 1112, 'n_words': 412}