revised re-edited and republished