changed callbacks to be regular ofEvents instead of blocks