Added the beginning of final version