// inputに入力データ全体が入る
function Main(input) {
    // 1行目がinput[0], 2行目がinput[1], …に入る
    input = input.split("\n");
    tmp0 = input[0].split(" ");
    N = Number(tmp0[0]);
    R = {}
    for(var i=1; i <= N;i++)
    {
        tmp = input[i].split(" ")
        if(!R[tmp[0]])
        {
            R[tmp[0]] = []
        }
        tmpR = {}
        tmpR.price = Number(tmp[1])
        tmpR.index = i
        R[tmp[0]].push(tmpR)
    }

    var keys=[];
    for(var key in R)keys.push(key);
    keys.sort()
    for(var i =0; i < keys.length; i++)
    {
        tmpR = R[keys[i]].sort((a,b) => b.price - a.price)
        for(var j =0; j < tmpR.length; j++){
            console.log(tmpR[j].index)
        }
    }
  }
  //*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
  Main(require("fs").readFileSync("/dev/stdin", "utf8"));
//   Main("6\nkazan 36\nmoscow 10\nkazan 50\nkazan 35\nmoscow 60\nkhabarovsk 40\n");