many changes in ex3