Async set
Use functional@0.2
Separate set and put