change TProcedurePointer type signature