add error as return type