<commit_before>'use strict';


let cards = [];
for (let a = 0; a < 3; a++) {
    for (let b = 0; b < 3; b++) {
        for (let c = 0; c < 3; c++) {
            for (let d = 0; d < 3; d++) {
                cards.push( (a << 6) + (b << 4) + (c << 2) + d );
            }
        }
    }
}

function cardToString( card ){
    const str = "00000000" + card.toString(2);
    return str.substring( str.length - 8 )
}

function validate( c1, c2, c3 ){

    let result = true;

    for( let p=0;p<4 && result;p++){

        const p1 = ( c1 >> p*2 ) & 0x3;
        const p2 = ( c2 >> p*2 ) & 0x3;
        const p3 = ( c3 >> p*2 ) & 0x3;

        result &= checkProperty( p1, p2, p3 );
    }

    return result;

}

function checkProperty( p1, p2, p3 ){
    return ( p1 == p2 && p1 == p3 ) || ( p1 != p2 && p1 != p3 && p2 != p3 );<commit_msg>reduced<commit_after>'use strict';

let cards = [];
for (let t=0;t<81;t++){
    cards.push( (((t/27)%3)<<6) + (((t/9)%3)<<4) + (((t/3)%3)<<2) + (t%3) );
}

function cardToString( card ){
    const str = "00000000" + card.toString(2);
    return str.substring( str.length - 8 )
}

function validate( c1, c2, c3 ){

    let result = true;
    for( let p=0;p<4 && result;p++){
        result &= checkProperty( ( c1 >> p*2 ) & 0x3, ( c2 >> p*2 ) & 0x3, ( c3 >> p*2 ) & 3 );
    }
    return result;

}

function checkProperty( p1, p2, p3 ){
    return ( p1 == p2 && p1 == p3 ) || ( p1 != p2 && p1 != p3 && p2 != p3 );
{'fraction_non_alphanumeric': 0.21907394609536973, 'fraction_numerical': 0.07601935038009675, 'mean_word_length': 2.0743099787685777, 'pattern_counts': {'":': 0, '<': 22, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 2, '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': '4371304', 'n_tokens_mistral': 636, 'n_tokens_neox': 591, 'n_words': 165}