first commit with same functions