ge.grammar = {
    '<EXPR>' : [
            {'become' : '(<EXPR>)<OP>(<EXPR>)', 'p' : 2},
            {'become' : '<VAR>', 'p' : 8},
            {'become' : '<NUM>', 'p' : 1},
        ],
    '<OP>' : [
            {'become' : '+', 'p' : 2},
            {'become' : '-', 'p' : 2},
            {'become' : '*', 'p' : 2},
            {'become' : '/', 'p' : 2},
            {'become' : '**', 'p' : 1}
        ],
    '<VAR>' : [
            {'become' : 'minOtsu', 'p' : 2},
            {'become' : 'otsu', 'p' : 2},
            {'become' : 'stdev', 'p' : 2},
            {'become' : 'mean', 'p' : 2},            
        ],
    '<NUM>' : [
            {'become' : '<DIGIT>.<DIGIT>', 'p' : 2},
            {'become' : '<DIGIT>', 'p' : 8}
        ],
    '<DIGIT>' : [
            {'become' : '<DIGIT><DIGIT>', 'p' : 1},
            {'become' : '0', 'p' : 1},
            {'become' : '1', 'p' : 1},
            {'become' : '2', 'p' : 1},
            {'become' : '3', 'p' : 1},
            {'become' : '4', 'p' : 1},
            {'become' : '5', 'p' : 1},
            {'become' : '6', 'p' : 1},
            {'become' : '7', 'p' : 1},
            {'become' : '8', 'p' : 1},
            {'become' : '9', 'p' : 1}
        ]
}
ge.grammar = {
    '<EXPR>' : [
            {'become' : '(<EXPR>)<OP>(<EXPR>)', 'p' : 2},
            {'become' : '<VAR>', 'p' : 8},
            {'become' : '<NUM>', 'p' : 2}
        ],
    '<OP>' : [
            {'become' : '+', 'p' : 2},
            {'become' : '-', 'p' : 2},
            {'become' : '*', 'p' : 2},
            {'become' : '/', 'p' : 2},
            {'become' : '**', 'p' : 2}
        ],
    '<VAR>' : [            
            {'become' : 'shucked_weight', 'p' : 2},
            {'become' : 'sex', 'p' : 2},
            {'become' : 'length', 'p' : 2},
            {'become' : 'diameter', 'p' : 2},
            {'become' : 'height', 'p' : 2},
            {'become' : 'whole_weight', 'p' : 2},            
            {'become' : 'viscera_weight', 'p' : 2},
            {'become' : 'shell_weight', 'p' : 2},
            #{'become' : 'rings', 'p' : 2},            
        ],
    '<NUM>' : [
            {'become' : '<DIGIT>.<DIGIT>', 'p' : 1},
            {'become' : '<DIGIT>', 'p' : 9}
        ],
    '<DIGIT>' : [
            {'become' : '<DIGIT><DIGIT>', 'p' : 1},
            {'become' : '0', 'p' : 2},
            {'become' : '1', 'p' : 2},
            {'become' : '2', 'p' : 2},
            {'become' : '3', 'p' : 2},
            {'become' : '4', 'p' : 2},
            {'become' : '5', 'p' : 2},
            {'become' : '6', 'p' : 2},
            {'become' : '7', 'p' : 2},
            {'become' : '8', 'p' : 2},
            {'become' : '9', 'p' : 2}
        ]
}