import java.io.*;
import java.util.*;
class BYTESM2 {
StringBuilder string = new StringBuilder();
int[][] grid = new int[102][102];
int t = in.nextInt();
for(int x = 0; x < t; x++){
int rows = in.nextInt();
int cols = in.nextInt();
int i, j;
for(i = 1; i <= rows; i++){
for(j = 1; j <= cols; j++){
grid[i][j] = in.nextInt();
}
grid[i][j] = 0;
for(j = 1; j <= cols; j++){
grid[i][j] += max(grid[i-1][j-1], grid[i-1][j], grid[i-1][j+1]);
}
}
int r = grid[rows][1];
for(i = 2; i <= cols; i++){
r = max(r, grid[rows][i], 0);
}
string.append(r + "\n");
}
}
public static int max(int a, int b, int c){
if(a >= b && a >= c){
return a;
}else if(b >= c){
return b;
}else{
return c;
}
}
}
{
final private int BUFFER_SIZE = 1 << 16;
private byte[] buffer;
private int bufferPointer, bytesRead;
{
buffer = new byte[BUFFER_SIZE];
bufferPointer = bytesRead = 0;
}
{
long ret = 0;
byte c = read();
while (c <= ' ') c = read();
boolean neg = c == '-';
if (neg) c = read();
do
{
ret = ret * 10 + c - '0';
c = read();
} while (c > ' ');
if (neg) return -ret;
return ret;
}
//reads in the next string
{
StringBuilder ret = new StringBuilder();
byte c = read();
while (c <= ' ') c = read();
do
{
ret = ret.append((char)c);
c = read();
} while (c > ' ');
return ret.toString();
}
{
int ret = 0;
byte c = read();
while (c <= ' ') c = read();
boolean neg = c == '-';
if (neg) c = read();
do
{
ret = ret * 10 + c - '0';
c = read();
} while (c > ' ');
if (neg) return -ret;
return ret;
}
{
bytesRead = din.read(buffer, bufferPointer = 0, BUFFER_SIZE);
if (bytesRead == -1) buffer[0] = -1;
}
{
if (bufferPointer == bytesRead) fillBuffer();
return buffer[bufferPointer++];
}
}
aW1wb3J0IGphdmEuaW8uKjsKaW1wb3J0IGphdmEudXRpbC4qOwpjbGFzcyBCWVRFU00yIHsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBFeGNlcHRpb257CgkJUGFyc2VyIGluID0gbmV3IFBhcnNlcihTeXN0ZW0uaW4pOwoJCVN0cmluZ0J1aWxkZXIgc3RyaW5nID0gbmV3IFN0cmluZ0J1aWxkZXIoKTsKCQlpbnRbXVtdIGdyaWQgPSBuZXcgaW50WzEwMl1bMTAyXTsKCQlpbnQgdCA9IGluLm5leHRJbnQoKTsKCQlmb3IoaW50IHggPSAwOyB4IDwgdDsgeCsrKXsKCQkJaW50IHJvd3MgPSBpbi5uZXh0SW50KCk7CgkJCWludCBjb2xzID0gaW4ubmV4dEludCgpOwoJCQlpbnQgaSwgajsKCQkJZm9yKGkgPSAxOyBpIDw9IHJvd3M7IGkrKyl7CgkJCQlmb3IoaiA9IDE7IGogPD0gY29sczsgaisrKXsKCQkJCQlncmlkW2ldW2pdID0gaW4ubmV4dEludCgpOwoJCQkJfQoJCQkJZ3JpZFtpXVtqXSA9IDA7CgkJCQlmb3IoaiA9IDE7IGogPD0gY29sczsgaisrKXsKCQkJCQlncmlkW2ldW2pdICs9IG1heChncmlkW2ktMV1bai0xXSwgZ3JpZFtpLTFdW2pdLCBncmlkW2ktMV1baisxXSk7CgkJCQl9CQkJCQoJCQl9CgkJCWludCByID0gZ3JpZFtyb3dzXVsxXTsKCQkJZm9yKGkgPSAyOyBpIDw9IGNvbHM7IGkrKyl7CgkJCQlyID0gbWF4KHIsIGdyaWRbcm93c11baV0sIDApOwoJCQl9CgkJCXN0cmluZy5hcHBlbmQociArICJcbiIpOwoJCX0KCQlTeXN0ZW0ub3V0LnByaW50KHN0cmluZyk7Cgl9CgkKCXB1YmxpYyBzdGF0aWMgaW50IG1heChpbnQgYSwgaW50IGIsIGludCBjKXsKCQlpZihhID49IGIgJiYgYSA+PSBjKXsKCQkJcmV0dXJuIGE7CgkJfWVsc2UgaWYoYiA+PSBjKXsKCQkJcmV0dXJuIGI7CgkJfWVsc2V7CgkJCXJldHVybiBjOwoJCX0KCX0KfQoKY2xhc3MgUGFyc2VyCnsKICAgZmluYWwgcHJpdmF0ZSBpbnQgQlVGRkVSX1NJWkUgPSAxIDw8IDE2OwoKICAgcHJpdmF0ZSBEYXRhSW5wdXRTdHJlYW0gZGluOwogICBwcml2YXRlIGJ5dGVbXSBidWZmZXI7CiAgIHByaXZhdGUgaW50IGJ1ZmZlclBvaW50ZXIsIGJ5dGVzUmVhZDsKCiAgIHB1YmxpYyBQYXJzZXIoSW5wdXRTdHJlYW0gaW4pCiAgIHsKICAgICAgZGluID0gbmV3IERhdGFJbnB1dFN0cmVhbShpbik7CiAgICAgIGJ1ZmZlciA9IG5ldyBieXRlW0JVRkZFUl9TSVpFXTsKICAgICAgYnVmZmVyUG9pbnRlciA9IGJ5dGVzUmVhZCA9IDA7CiAgIH0KCiAgIHB1YmxpYyBsb25nIG5leHRMb25nKCkgdGhyb3dzIEV4Y2VwdGlvbgogICB7CiAgICAgIGxvbmcgcmV0ID0gMDsKICAgICAgYnl0ZSBjID0gcmVhZCgpOwogICAgICB3aGlsZSAoYyA8PSAnICcpIGMgPSByZWFkKCk7CiAgICAgIGJvb2xlYW4gbmVnID0gYyA9PSAnLSc7CiAgICAgIGlmIChuZWcpIGMgPSByZWFkKCk7CiAgICAgIGRvCiAgICAgIHsKICAgICAgICAgcmV0ID0gcmV0ICogMTAgKyBjIC0gJzAnOwogICAgICAgICBjID0gcmVhZCgpOwogICAgICB9IHdoaWxlIChjID4gJyAnKTsKICAgICAgaWYgKG5lZykgcmV0dXJuIC1yZXQ7CiAgICAgIHJldHVybiByZXQ7CiAgIH0KICAgCiAgIC8vcmVhZHMgaW4gdGhlIG5leHQgc3RyaW5nCiAgIHB1YmxpYyBTdHJpbmcgbmV4dCgpIHRocm93cyBFeGNlcHRpb24KICAgewogICAgICBTdHJpbmdCdWlsZGVyIHJldCA9ICBuZXcgU3RyaW5nQnVpbGRlcigpOwogICAgICBieXRlIGMgPSByZWFkKCk7CiAgICAgIHdoaWxlIChjIDw9ICcgJykgYyA9IHJlYWQoKTsKICAgICAgZG8KICAgICAgewogICAgICAgICByZXQgPSByZXQuYXBwZW5kKChjaGFyKWMpOwogICAgICAgICBjID0gcmVhZCgpOwogICAgICB9IHdoaWxlIChjID4gJyAnKTsKICAgICAgcmV0dXJuIHJldC50b1N0cmluZygpOwogICB9CgogICBwdWJsaWMgaW50IG5leHRJbnQoKSB0aHJvd3MgRXhjZXB0aW9uCiAgIHsKICAgICAgaW50IHJldCA9IDA7CiAgICAgIGJ5dGUgYyA9IHJlYWQoKTsKICAgICAgd2hpbGUgKGMgPD0gJyAnKSBjID0gcmVhZCgpOwogICAgICBib29sZWFuIG5lZyA9IGMgPT0gJy0nOwogICAgICBpZiAobmVnKSBjID0gcmVhZCgpOwogICAgICBkbwogICAgICB7CiAgICAgICAgIHJldCA9IHJldCAqIDEwICsgYyAtICcwJzsKICAgICAgICAgYyA9IHJlYWQoKTsKICAgICAgfSB3aGlsZSAoYyA+ICcgJyk7CiAgICAgIGlmIChuZWcpIHJldHVybiAtcmV0OwogICAgICByZXR1cm4gcmV0OwogICB9CiAgIAogICBwcml2YXRlIHZvaWQgZmlsbEJ1ZmZlcigpIHRocm93cyBFeGNlcHRpb24KICAgewogICAgICBieXRlc1JlYWQgPSBkaW4ucmVhZChidWZmZXIsIGJ1ZmZlclBvaW50ZXIgPSAwLCBCVUZGRVJfU0laRSk7CiAgICAgIGlmIChieXRlc1JlYWQgPT0gLTEpIGJ1ZmZlclswXSA9IC0xOwogICB9CgogICBwcml2YXRlIGJ5dGUgcmVhZCgpIHRocm93cyBFeGNlcHRpb24KICAgewogICAgICBpZiAoYnVmZmVyUG9pbnRlciA9PSBieXRlc1JlYWQpIGZpbGxCdWZmZXIoKTsKICAgICAgcmV0dXJuIGJ1ZmZlcltidWZmZXJQb2ludGVyKytdOwogICB9Cn0=