Decentralized Allocation Of Tasks With Temporal And Precedence Constraints To A Team Of Robots