review spec and implementation