spec re-written