add TheEndCallback()