
import java.util.*;

public class testing {

	public static void main(String[] args) {
		Scanner scn = new Scanner(System.in);
		int n = scn.nextInt();
		int a[][] = new int[n - 1][2];
		int occur[] = new int[n];
		int ans[] = new int[n - 1];
		for (int i = 0; i < n - 1; i++) {
			int x = scn.nextInt() - 1;
			int y = scn.nextInt() - 1;
			a[i][0] = x;
			a[i][1] = y;
			occur[x]++;
			occur[y]++;
		}
		int val = 0;
		HashSet<Integer>hset=new HashSet<>();
		for (int i = 0; i < n - 1; i++) {
			int x = a[i][0];
			int y = a[i][1];
			if (occur[x] == 1 || occur[y] == 1) {
				ans[i] = val;
				val++;
				hset.add(i);
			}
		}
		for (int i = 0; i < n - 1; i++) {
			if (!hset.contains(i)) {
				ans[i] = val;
				val++;
			}
		}
		StringBuilder sb = new StringBuilder();
		for (int v : ans) {
			sb.append(v + "\n");
		}
		System.out.println(sb);
	}
}