#include <stdio.h>

#define MAX_H 250

int A[MAX_H];

int main() {
  int H;
  int i;
  scanf("%d", &H);  
  for(i = 0; i < H; i++) scanf("%d", A+i);

  for(i = 0; i < H; i++) {
    printf("node %d: ", i+1);
    printf("key = %d, ", A[i]);
    if(i) printf("parent key = %d, ", A[(i-1)/2]);
    if(2*i+1 < H) printf("left key = %d, ", A[2*i+1]);
    if(2*i+2 < H) printf("right key = %d, ", A[2*i+2]);
    puts("");
  }
  
  return 0;
}