updated + corrections