<commit_before><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>ServiceStack Redis StackOverflow</title>

    <link href="default.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>

    <script type="text/javascript">
        $(function() {
            var authUser, userStats, siteStats, qSource = "questions", qLabel = "Latest Questions";
            
            $(document).click(function(e){
                var el = e.target;
                if (!el.getAttribute("data-cmd")) return;
                qSource = el.getAttribute("data-cmd");
                qLabel = el.getAttribute("data-label");
                refresh();
            });

            var ua = navigator.userAgent, iPhone = ua.indexOf("iPhone") >= 0, iPad = ua.indexOf("iPad") >= 0; 
            if (iPhone || iPad)
            {
                $("#footer").css({position:"static",clear:"both", margin:"80px 0 -30px -18px"});
            }

            var defaultMessage = "Browse latest or login to ask a question";

            var updateStatus = function(message, className)
            {
                var sb = className
                    ? '<b class="' + className + '">'
                    : '<b>';
                $("#status H4").html(sb + message + '</b>');
            }

            var updateUserStatus = function(message, className)
            {
                var sb = className
                    ? '<span class="' + className + '">'
                    : '<span>';
                $("#user H4").html(sb + message + '</span>');
            }

            updateStatus(defaultMessage);

            var fromDtoDate = function(dateStr) {
                return new Date(parseFloat(/Date\(([^)]+)\)/.exec(dateStr)[1]));
            } 
            var toTwitterTime = function (a) {
                var b = new Date();
                var c = typeof a == "date" ? a : new Date(a);
                var d = b - c;
                var e = 1000, minute = e * 60, hour = minute * 60, day = hour * 24, week = day * 7;
                if (isNaN(d) || d < 0) { return "" }
                if (d < e * 7) { return "right now" }
                if (d < minute) { return Math.floor(d / e) + " secs ago" }
                if (d < minute * 2) { return "about 1 min ago" }
                if (d < hour) { return Math.floor(d / minute) + " mins ago" }
                if (d < hour * 2) { return "about 1 hour ago" }
                if (d < day) { return Math.floor(d / hour) + " hours ago" }
                if (d > day && d < day * 2) { return "yesterday" }
                if (d < day * 365) { return Math.floor(d / day) + " days ago" } else { return "over a year ago" }
            }

            function enc(html) {
                if (typeof html != "string") return html;
                return html.replace('<','&lt;').replace('>','&gt;').replace('"','&quot;');
            }

            function refresh(callback, skipPushState) {
                if (!skipPushState && window.history.pushState)
                {
                    var frag = "#!" + qSource + "/" + encodeURIComponent(qLabel.replace(/ /g,'_'));
                    window.history.pushState({qSource:qSource,qLabel:qLabel},qLabel, frag);
                }

                var asyncCount = 0;
                if (authUser)
                {
                    asyncCount++;
                    $.get("users/" + authUser.Id + "/stats", function(r){
                        userStats = r.Result;
                        var msg = "You have "
                            + '<em data-cmd="users/' + authUser.Id + '/questions" data-label="Questions by '<commit_msg>make ctrl/shit + click open new window<commit_after><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>ServiceStack Redis StackOverflow</title>

    <link href="default.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>

    <script type="text/javascript">
        $(function() {
            var authUser, userStats, siteStats, qSource = "questions", qLabel = "Latest Questions";
            
            $(document).click(function(e){
                var el = e.target;
                if (!el.getAttribute("data-cmd")) return;
                qSource = el.getAttribute("data-cmd");
                qLabel = el.getAttribute("data-label");
                if (e.ctrlKey || e.shiftKey) {
                    window.open(getFrag(qSource, qLabel));
                    return;
                }
                refresh();
            });

            var ua = navigator.userAgent, iPhone = ua.indexOf("iPhone") >= 0, iPad = ua.indexOf("iPad") >= 0; 
            if (iPhone || iPad)
            {
                $("#footer").css({position:"static",clear:"both", margin:"80px 0 -30px -18px"});
            }

            var defaultMessage = "Browse latest or login to ask a question";

            var updateStatus = function(message, className)
            {
                var sb = className
                    ? '<b class="' + className + '">'
                    : '<b>';
                $("#status H4").html(sb + message + '</b>');
            }

            var updateUserStatus = function(message, className)
            {
                var sb = className
                    ? '<span class="' + className + '">'
                    : '<span>';
                $("#user H4").html(sb + message + '</span>');
            }

            updateStatus(defaultMessage);

            var fromDtoDate = function(dateStr) {
                return new Date(parseFloat(/Date\(([^)]+)\)/.exec(dateStr)[1]));
            } 
            var toTwitterTime = function (a) {
                var b = new Date();
                var c = typeof a == "date" ? a : new Date(a);
                var d = b - c;
                var e = 1000, minute = e * 60, hour = minute * 60, day = hour * 24, week = day * 7;
                if (isNaN(d) || d < 0) { return "" }
                if (d < e * 7) { return "right now" }
                if (d < minute) { return Math.floor(d / e) + " secs ago" }
                if (d < minute * 2) { return "about 1 min ago" }
                if (d < hour) { return Math.floor(d / minute) + " mins ago" }
                if (d < hour * 2) { return "about 1 hour ago" }
                if (d < day) { return Math.floor(d / hour) + " hours ago" }
                if (d > day && d < day * 2) { return "yesterday" }
                if (d < day * 365) { return Math.floor(d / day) + " days ago" } else { return "over a year ago" }
            }

            function enc(html) {
                if (typeof html != "string") return html;
                return html.replace('<','&lt;').replace('>','&gt;').replace('"','&quot;');
            }
            function getFrag(qSource, qLabel)
            {
                return "#!" + qSource + "/" + encodeURIComponent(qLabel.replace(/ /g,'_'));
            }

            function refresh(callback, skipPushState) {
                if (!skipPushState && window.history.pushState)
                {
                    window.history.pushState({qSource:qSource,qLabel:qLabel},qLabel, getFrag(qSource, qLabel));
                }

                var asyncCount = 0;
                if (authUser)
                {
                    asyncCount++;
                    $.get("users/" + authUser.Id + "/stats", function(r){
                        userStats = r.Result;
                        var msg = "You have "
                            + '<em data-cmd="users/' + authUser.Id + '/questions" data-label="Questions by '
{'fraction_non_alphanumeric': 0.15339270036372757, 'fraction_numerical': 0.012040637150382541, 'mean_word_length': 1.456561922365989, 'pattern_counts': {'":': 0, '<': 55, '<?xml version=': 0, '>': 41, 'https://': 0, 'lorem ipsum': 0, 'www.': 4, 'xml': 2}, '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': '4225369', 'n_tokens_mistral': 2381, 'n_tokens_neox': 2172, 'n_words': 546}