This is the second version of Amit Freidman. The first