initial basic version with send (not exactly error proof)