let inputStr = readline();
let X = 0, Y = 0;

function getCode(str) {
    // 不支持断言,很头疼,只能换一种写法
    // let reg = /(?<![\d\s\w])([AWSD])(\d{1,2});/g;

    // 第二种写法,我们拿原子表取出的数据,获取它的index,然后取它前面的一个字符串
    // 判断前面一个字符串是不是;号,是则正确,否则错误,index==0除外
    let reg = /([AWSD])(\d{1,2});/g;
    let res;
    while(res = reg.exec(str)){
        if(res['index'] != 0){
            let beforeStr = res['input'].slice(res['index']-1,res['index']);
            if(beforeStr === ';'){
                getFix(res[1] , parseInt(res[2]));
            }
        }else{
            getFix(res[1] , parseInt(res[2]));
        }
    }

    console.log(X +','+ Y)
}
function getFix(letter , num){
    switch(letter) {
        case 'A':
            X -= num;
            break;
        case 'D':
            X += num;
            break;
        case 'S':
            Y -= num;
            break;
        case 'W':
            Y += num;
            break;
        default:
            break;
    }
}


 getCode(inputStr);