- handle OutOfMemory error
- donate