public ArrayList<ArrayList<Integer>> pathSum(TreeNode root, int sum) {
        if (root == null) return res;
        Stack<Integer> stk = new Stack<Integer>();
        stk.push(root.val);
		pathSumRec(root, sum, stk);
		return res;
	}