usage: open! (exec! with callback) or (getTable! then freeTable!) close!