wrote the spec

time to write the code.