initial commit, very incomplete, readed until section 4.2.2