Final version without commented functions.