Updated functional spec