Adding functional part 2