Micro 0.3 -- uses separate holder object for callback