Adding functional specification