functional programming hw added