Use anonymous struct for decoding
Remove doer