part of the big lemma added. Not revised