(function (input) {
    var inputs = input.replace(/\r/g, '').split("\n"),
        n;

    n = parseInt(inputs.shift());

    for ( var i = 0; i < n; i++ ) {
        var funds = parseInt(inputs.shift()),
            years = parseInt(inputs.shift()),
            dataNum = parseInt(inputs.shift()),
            methods = [];

        /*
        利子：毎年発生、運用資金残高に年利率をかけ、1円未満を切り捨て

        複利：利子は翌年以降の運用資金の残高に加算
        単利：利子は別の場所へ蓄積

        手数料：上記の処理を行ったあとに、運用資金の残高から手数料が引かれる
        */
        for ( var j = 0; j < dataNum; j++ ) {
            var line = inputs.shift().split(' ');
            methods.push({
                isSimpleInterest: line[0] === '0' ? true : false,    // 単利 true
                annualInterestRate: parseFloat(line[1]),             // 年利率
                charge: parseInt(line[2])                            // 手数料
            });
        }

        var max = 0;
        methods.forEach(function(m) {
            var tmp = funds,
                box = 0;
            for ( var i = 0; i < years; i++ ) {
                if ( m.isSimpleInterest ) {
                    box += ~~(tmp * m.annualInterestRate);
                } else {
                    tmp += ~~(tmp * m.annualInterestRate);
                }
                tmp -= m.charge;
            }
            tmp += box;
            if ( tmp > max ) {
                max = tmp;
            }
        });
        console.log(max);
    }

})(require("fs").readFileSync("/dev/stdin", "utf8"));