SortedSet<Double> h(double a2, double b2, double c2, double d2){
		SortedSet<Double> a = new TreeSet<Double>();
		a.add(a2);
		SortedSet<Double> b = new TreeSet<Double>();
		b.add(b2);
		SortedSet<Double> c = new TreeSet<Double>();
		c.add(c2);
		SortedSet<Double> d = new TreeSet<Double>();
		d.add(d2);
		SortedSet<Double> p = new TreeSet<Double>();
		//((ab)c)d
		p.addAll(g(g(g(a,b),c),d));
		//(ab)(cd)
		p.addAll(g(g(a,b),g(c,d)));
		//(a(bc))d
		p.addAll(g(g(a,g(b,c)),d));
		//a((bc)d)
		p.addAll(g(a,g(g(b,c),d)));
		//a(b(cd))
		p.addAll(g(a,g(b,g(c,d))));
		return p;
	}