'use strict'

const INF = 900719925474099;


function Main(input){
    let temp = input.trim().split('\n');
    let temp2 = temp[0].split(' ').map((v)=>parseInt(v));
    let n = temp2.shift();
    let q = temp2.shift();
    
    let stx = [];
    for(let i=1;i<=n;i++){
        temp2 = temp[i].split(' ').map((v)=>parseInt(v));
        stx.push({s:temp2[0],t:temp2[1],x:temp2[2]});
    }
    stx.sort((a,b)=>a.t-b.t);
    //console.log(stx);

    let target = 0;
    let d;
    let ans = [];
    let f;
    for(let i=1;i<=q;i++){
        d = parseInt(temp[n+i]);
        //console.log('d:',d,'--------------------');
        while(d > stx[target].t){
            if(target >= (n-1)) break;
            target++;
        }
        //console.log('target:',target);
        f=false;
        for(let j=target;j<n;j++){
            if( stx[j].s <= stx[j].x + d && stx[j].x + d < stx[j].t ){
                ans.push(stx[j].x);
                f=true;
                //console.log('push:',stx[j].x);
                break;
            }
        }
        if(f==false){
            ans.push(-1);
            //console.log('push:',-1);
        }
    }
    console.log(ans.join('\n'));
}
//*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
Main(require("fs").readFileSync("/dev/stdin", "utf8"));
