callback reduced changes