Page 1 of 1

[12.26] [Twinsen] Crash when leaving MP game while network disconnect

Posted: Fri Mar 18, 2016 1:42 am
by Loewchen
I repeatedly (but not always) had factorio crash when leaving (ESC, Quit game) a multiplayer game right after being disconnected form the internet, while the drop detection bar of the server was displayed.

log:

Code: Select all

   0.001 2016-03-17 22:08:46; Factorio 0.12.26 (Build 17762, win64)
   0.001 Operating system: Windows 7 Service Pack 1
   0.001 Program arguments: "C:\Spiele\Factorio\Factorio_0.12.26_daniel_Marathon\bin\x64\Factorio.exe" 
   0.001 Read data path: C:/Spiele/Factorio/Factorio_0.12.26_daniel_Marathon/data
   0.001 Write data path: C:/Spiele/Factorio/Factorio_0.12.26_daniel_Marathon
   0.001 Binaries path: C:/Spiele/Factorio/Factorio_0.12.26_daniel_Marathon/bin
   0.014 Available display adapters: 1
   0.014  [0]: \\.\DISPLAY1 - NVIDIA GeForce GTX 560 Ti   {0x05, [0,0], 1920x1080, 32bit, 60Hz}
   0.014 Create display on adapter 0. Size 1280x720 at position [310, 162].
   0.314 Initialised Direct3D:[0] NVIDIA GeForce GTX 560 Ti  ; driver: nvd3dumx.dll 9.18.13.4052
   0.351 Desktop composition is active.
   0.351 Graphics options: [FullScreen: true] [VSync: true] [UIScale: 95%] [MultiSampling: OFF] [Graphics quality: low] [Video memory usage: all] [Light scale: 20%] [Screen: 255]
   0.408 Loading mod core 0.0.0 (data.lua)
   0.411 Loading mod base 0.12.26 (data.lua)
   0.477 Loading mod marathon 1.0.0 (data.lua)
   0.520 Loading mod BeltsAreBroken 0.12.24 (data.lua)
   0.563 Loading mod FactorioBasics-Core 0.1.3 (data.lua)
   0.605 Loading mod NoHandCrafting 0.12.24 (data.lua)
   0.648 Loading mod UnminableBuildings 0.0.3 (data.lua)
   0.694 Loading mod FactorioBasics-Equipment 0.1.3 (data.lua)
   0.732 Loading mod FactorioBasics-Logistics 0.1.3 (data.lua)
   0.776 Loading mod FactorioBasics-Machines 0.1.3 (data.lua)
   0.826 Loading mod FactorioBasics-Power 0.1.3 (data.lua)
   0.872 Loading mod FactorioBasics-Transport 0.1.3 (data.lua)
   0.924 Loading mod FactorioBasics-Weaponry 0.1.3 (data.lua)
   0.974 Loading mod marathon 1.0.0 (data-updates.lua)
   1.027 Loading mod UnminableBuildings 0.0.3 (data-final-fixes.lua)
   1.482 Initial atlas bitmap size is 16384
   1.484 Created atlas bitmap 16384x4191
   9.532 Factorio initialised
  12.583 Info Router.cpp:556: Router peerID(65535) shutting down.
  12.596 Info Router.cpp:582: Router state -> Disconnected
  12.596 Joining game 188.165.250.160:34198 at port 34197
  12.596 Info WindowsUDPSocket.cpp:73: Opening socket at port (34197)
  12.602 Info Router.cpp:582: Router state -> Connecting
  12.607 Info MultiplayerManager.cpp:906: networkTick(0) mapTick(-1) changing state from(Ready) to(Connecting)
  12.684 Info Router.cpp:582: Router state -> WaitingForAccept
  12.867 Info Synchronizer.cpp:54: NetworkTick(36969944) initialized Synchronizer local peer(97) latency(12).
  12.867 Info Synchronizer.cpp:500: networkTick(36969944) adding peer(0) success(true).
  12.867 Info Synchronizer.cpp:500: networkTick(36969944) adding peer(96) success(true).
  12.867 Info Router.cpp:582: Router state -> Connected
  12.867 Info Router.cpp:767: ConnectionAccepted ownPeerID(97) nextPeerID(98)
  12.867 Info MultiplayerManager.cpp:906: networkTick(36969944) mapTick(-1) changing state from(Connecting) to(VerifyingConnection)
  12.950 Info Router.cpp:779: Received onPeerConnected for already connected peer(97)
  13.150 Info MultiplayerManager.cpp:1385: Received peer info for peer(0) username(<server>).
  13.150 Info MultiplayerManager.cpp:1043: networkTick(36969956) mapTick(-1) received stateChanged peerID(0) oldState(Ready) newState(InGame)
  13.150 Info MultiplayerManager.cpp:1385: Received peer info for peer(96) username(kaZ).
  13.150 Info MultiplayerManager.cpp:1043: networkTick(36969956) mapTick(-1) received stateChanged peerID(96) oldState(Ready) newState(InGame)
  13.150 Info MultiplayerManager.cpp:1385: Received peer info for peer(97) username(Loewchen).
  13.150 Info MultiplayerManager.cpp:1043: networkTick(36969956) mapTick(-1) received stateChanged peerID(97) oldState(Ready) newState(Connecting)
  13.150 Info MultiplayerManager.cpp:1385: Received peer info for peer(97) username(Loewchen).
  13.150 Info MultiplayerManager.cpp:1043: networkTick(36969956) mapTick(-1) received stateChanged peerID(97) oldState(Connecting) newState(Connecting)
  13.150 Info MultiplayerManager.cpp:1385: Received peer info for peer(97) username(Loewchen).
  13.150 Info MultiplayerManager.cpp:1043: networkTick(36969956) mapTick(-1) received stateChanged peerID(97) oldState(Connecting) newState(Connecting)
  13.150 Info MultiplayerManager.cpp:1043: networkTick(36969956) mapTick(-1) received stateChanged peerID(97) oldState(Connecting) newState(VerifyingConnection)
  13.367 Info MultiplayerManager.cpp:906: networkTick(36969969) mapTick(-1) changing state from(VerifyingConnection) to(ConnectedWaitingForMap)
  13.567 Info MultiplayerManager.cpp:1043: networkTick(36969981) mapTick(-1) received stateChanged peerID(97) oldState(VerifyingConnection) newState(ConnectedWaitingForMap)
  13.766 Info MultiplayerManager.cpp:1043: networkTick(36969993) mapTick(-1) received stateChanged peerID(0) oldState(InGame) newState(InGameAligning)
  13.767 Info MultiplayerManager.cpp:1043: networkTick(36969993) mapTick(-1) received stateChanged peerID(96) oldState(InGame) newState(InGameAligning)
  14.183 Info MultiplayerManager.cpp:1043: networkTick(36970018) mapTick(-1) received stateChanged peerID(0) oldState(InGameAligning) newState(InGameAligned)
  14.183 Info MultiplayerManager.cpp:1043: networkTick(36970018) mapTick(-1) received stateChanged peerID(0) oldState(InGameAligned) newState(InGameSavingMap)
  14.183 Info MultiplayerManager.cpp:1043: networkTick(36970018) mapTick(-1) received stateChanged peerID(96) oldState(InGameAligning) newState(InGameAligned)
  14.183 Info MultiplayerManager.cpp:1043: networkTick(36970018) mapTick(-1) received stateChanged peerID(96) oldState(InGameAligned) newState(InGameWaitingForOthers)
  15.417 Info MultiplayerManager.cpp:1043: networkTick(36970092) mapTick(-1) received stateChanged peerID(0) oldState(InGameSavingMap) newState(InGameSendingMap)
  15.417 Downloading file C:/Spiele\Factorio\Factorio_0.12.26_daniel_Marathon\temp\mp-download.zip (8228363 B, 16359 blocks)
  15.422 Info MultiplayerManager.cpp:906: networkTick(36970092) mapTick(-1) changing state from(ConnectedWaitingForMap) to(ConnectedDownloadingMap)
  15.422 Info NetworkInputHandler.cpp:40: mapTick(32070646) networkTick(36970092) initialized NetworkInputHandler local peer(97).
  15.422 Info NetworkInputHandler.cpp:491: expectedMapTick(32070646) adding peer(0).
  15.422 Info NetworkInputHandler.cpp:491: expectedMapTick(32070646) adding peer(96).
  15.422 Info Synchronizer.cpp:413: NetworkTick(36970092) mapTick(32070646) applying 55 pending tickClosures
  15.422 Info NetworkInputHandler.cpp:570: assigning playerIndex(255) to peer(0)
  15.422 Info NetworkInputHandler.cpp:570: assigning playerIndex(11) to peer(96)
  15.422 Info NetworkInputHandler.cpp:570: assigning playerIndex(255) to peer(97)
  15.422 Info MultiplayerManager.cpp:1583: networkTick(36970092) mapTick(-1) adding mapAlignTask(SendPlayerJoinGameAlignTask)
  15.617 Info MultiplayerManager.cpp:1043: networkTick(36970104) mapTick(-1) received stateChanged peerID(97) oldState(ConnectedWaitingForMap) newState(ConnectedDownloadingMap)
  45.218 Finished download (29 s, 8.2 MB, 276 kB/s)
  45.284 Info MultiplayerManager.cpp:1118: networkTick(36971843) mapTick(-1) map download finished creating scenario
  45.285 Info MultiplayerManager.cpp:906: networkTick(36971843) mapTick(-1) changing state from(ConnectedDownloadingMap) to(ConnectedLoadingMap)
  45.285 Loading map C:/Spiele\Factorio\Factorio_0.12.26_daniel_Marathon\temp\mp-download.zip
  45.314 Info Scenario.cpp:124: Map version 0.12.26-0
  45.455 Info MultiplayerManager.cpp:1043: networkTick(36971855) mapTick(-1) received stateChanged peerID(97) oldState(ConnectedDownloadingMap) newState(ConnectedLoadingMap)
  45.642 Info MultiplayerManager.cpp:1043: networkTick(36971867) mapTick(-1) received stateChanged peerID(0) oldState(InGameSendingMap) newState(InGameWaitingForOthers)
  46.050 Info MultiplayerManager.cpp:906: networkTick(36971892) mapTick(32070646) changing state from(ConnectedLoadingMap) to(InGameWaitingForOthers)
  46.369 Info MultiplayerManager.cpp:1043: networkTick(36971904) mapTick(32070646) received stateChanged peerID(97) oldState(ConnectedLoadingMap) newState(InGameWaitingForOthers)
  46.369 Info MultiplayerManager.cpp:1231: networkTick(36971904) mapTick(32070646) stopping mapAlign
  46.369 Info MultiplayerManager.cpp:1735: performing map align task (SendPlayerJoinGameAlignTask)
  46.369 Info MultiplayerManager.cpp:906: networkTick(36971904) mapTick(32070646) changing state from(InGameWaitingForOthers) to(InGame)
  46.369 Info MultiplayerManager.cpp:1557: networkTick(36971904) mapTick(32070646) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGameWaitingForOthers) mapAlignTick(-1))
((peerID(96) state(InGameWaitingForOthers) mapAlignTick(-1))
((peerID(97) state(InGameWaitingForOthers) mapAlignTick(-1))
)
  46.507 Info MultiplayerManager.cpp:1043: networkTick(36971916) mapTick(32070655) received stateChanged peerID(0) oldState(InGameWaitingForOthers) newState(InGame)
  46.507 Info MultiplayerManager.cpp:1043: networkTick(36971916) mapTick(32070655) received stateChanged peerID(96) oldState(InGameWaitingForOthers) newState(InGame)
  46.507 Info MultiplayerManager.cpp:1043: networkTick(36971916) mapTick(32070655) received stateChanged peerID(97) oldState(InGameWaitingForOthers) newState(InGame)
  46.593 Info NetworkInputHandler.cpp:712: mapTick(32070661) networkTick(36971922) connecting to player(Loewchen).
  46.593 Info NetworkInputHandler.cpp:570: assigning playerIndex(10) to peer(97)
  46.593 Info GameActionHandler.cpp:1943: MapTick(32070661) processed PlayerJoinGame peerID(97) playerIndex(10) mode(connect)
 312.597 Info MultiplayerManager.cpp:1557: networkTick(36987877) mapTick(32086399) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGame) mapAlignTick(-1))
((peerID(96) state(InGame) mapAlignTick(-1))
((peerID(97) state(InGame) mapAlignTick(-1))
)
 612.609 Info MultiplayerManager.cpp:1557: networkTick(37005876) mapTick(32104386) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGame) mapAlignTick(-1))
((peerID(96) state(InGame) mapAlignTick(-1))
((peerID(97) state(InGame) mapAlignTick(-1))
)
 912.620 Info MultiplayerManager.cpp:1557: networkTick(37023842) mapTick(32122240) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGame) mapAlignTick(-1))
((peerID(96) state(InGame) mapAlignTick(-1))
((peerID(97) state(InGame) mapAlignTick(-1))
)
1212.618 Info MultiplayerManager.cpp:1557: networkTick(37041820) mapTick(32140198) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGame) mapAlignTick(-1))
((peerID(96) state(InGame) mapAlignTick(-1))
((peerID(97) state(InGame) mapAlignTick(-1))
)
1512.624 Info MultiplayerManager.cpp:1557: networkTick(37059821) mapTick(32158094) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGame) mapAlignTick(-1))
((peerID(96) state(InGame) mapAlignTick(-1))
((peerID(97) state(InGame) mapAlignTick(-1))
)
1812.636 Info MultiplayerManager.cpp:1557: networkTick(37077779) mapTick(32175992) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGame) mapAlignTick(-1))
((peerID(96) state(InGame) mapAlignTick(-1))
((peerID(97) state(InGame) mapAlignTick(-1))
)
2112.632 Info MultiplayerManager.cpp:1557: networkTick(37095779) mapTick(32193865) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGame) mapAlignTick(-1))
((peerID(96) state(InGame) mapAlignTick(-1))
((peerID(97) state(InGame) mapAlignTick(-1))
)
2412.639 Info MultiplayerManager.cpp:1557: networkTick(37113775) mapTick(32211852) peerID(97) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGame) mapAlignTick(-1))
((peerID(96) state(InGame) mapAlignTick(-1))
((peerID(97) state(InGame) mapAlignTick(-1))
)
2488.254 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(0) drop detection state(100/600).
2488.254 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(96) drop detection state(100/600).
2489.920 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(0) drop detection state(200/600).
2489.920 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(96) drop detection state(200/600).
2491.586 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(0) drop detection state(300/600).
2491.586 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(96) drop detection state(300/600).
2491.684 Info MultiplayerManager.cpp:134: NetworkTick(37118213) disconnecting multiplayer connection.
2491.684 Info NetworkInputHandler.cpp:59: expectedMapTick(32216283) sending PlayerLeaveGame
2493.252 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(0) drop detection state(400/600).
2493.252 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(96) drop detection state(400/600).
2494.919 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(0) drop detection state(500/600).
2494.919 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(96) drop detection state(500/600).
2496.585 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(0) drop detection state(600/600).
2496.585 Info Synchronizer.cpp:444: NetworkTick(37118213) peer(96) drop detection state(600/600).
2496.602 Info Synchronizer.cpp:590: NetworkTick(37118213) peer(0) peerHeartbeatsEmpty(false) is not responding, dropping.
2496.602 Info MultiplayerManager.cpp:2050: NetworkTick(37118213) MapTick(32216283) disconnecting player(11) from the user.
2496.602 Info Synchronizer.cpp:596: NetworkTick(37118213) peer(97) stopped responding, but we disconnect ourselves.
2496.818 Info MultiplayerManager.cpp:1429: Disconnect notification for peer (97)
2496.819 Info MultiplayerManager.cpp:993: networkTick(37118225) mapTick(32216294) removing peer(97) dropout(false)
2496.819 Info MultiplayerManager.cpp:906: networkTick(37118225) mapTick(32216294) changing state from(InGame) to(InGameAligning)
2496.819 Info MultiplayerManager.cpp:1669: networkTick(37118225) mapTick(32216294) starting mapAlign
2496.819 Info MultiplayerManager.cpp:1583: networkTick(37118225) mapTick(32216294) adding mapAlignTask(RemovePlayerAlignTask)
2497.019 Info MultiplayerManager.cpp:1043: networkTick(37118237) mapTick(32216294) received stateChanged peerID(97) oldState(InGame) newState(InGameAligning)
2497.019 Info MultiplayerManager.cpp:1603: networkTick(37118237) mapTick(32216294) sending mapAlignAction
2497.219 Info MultiplayerManager.cpp:1279: networkTick(37118249) mapTick(32216294) received MapAlignAction from peer(97), mapAlignTick(32216295) appliedTickClosuresCount(0)
2497.219 Info MultiplayerManager.cpp:1685: networkTick(37118250) mapTick(32216294) mapAlign finished targetTick(32216295) updating map and running the tasks ...
2497.219 Info MultiplayerManager.cpp:1557: networkTick(37118250) mapTick(32216294) peerID(97) fullStateLog: local state(InGameAligning) local peers(((peerID(97) state(InGameAligning) mapAlignTick(32216295))
)
2497.223 Info MultiplayerManager.cpp:1704: maptick(32216295) crc before applying all ticks: -1967605598
2497.223 Info NetworkInputHandler.cpp:632: applyAllTickClosures: expectedMapTick(32216295) lastTickApplied(32216280) referenceMapTick(32216295) networkTick(37118250)
2497.223 Info NetworkInputHandler.cpp:656: applyAllTickClosures: applying tickClosure(tick(32216283) inputActions((PlayerLeaveGame) (BuildItem) (BuildItem) ) ) for peer(97)
2497.223 Info NetworkInputHandler.cpp:515: expectedMapTick(-1) removing peer(97) success(true).
2497.223 Info GameActionHandler.cpp:1965: MapTick(32216295) processed PlayerLeaveGame peerID(97) playerIndex(10)
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\cygwin64\tmp\factorio-cjhs1v\libraries\stackwalker\stackwalker.cpp (923): StackWalker::ShowCallstack
c:\cygwin64\tmp\factorio-cjhs1v\src\util\logger.cpp (298): Logger::writeStacktrace
c:\cygwin64\tmp\factorio-cjhs1v\src\util\logger.cpp (352): Logger::logStacktrace
c:\cygwin64\tmp\factorio-cjhs1v\src\util\crashhandler.cpp (84): CrashHandler::writeStackTrace
c:\cygwin64\tmp\factorio-cjhs1v\src\util\crashhandler.cpp (104): CrashHandler::SehHandler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000778CB9F0)
00000000778CB9F0 (kernel32): (filename not available): UnhandledExceptionFilter
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000077AD7610)
0000000077AD7610 (ntdll): (filename not available): EtwEventSetInformation
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000077A67B58)
0000000077A67B58 (ntdll): (filename not available): _C_specific_handler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000077A78BBD)
0000000077A78BBD (ntdll): (filename not available): RtlDecodePointer
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000077A6875F)
0000000077A6875F (ntdll): (filename not available): RtlUnwindEx
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000077A9D348)
0000000077A9D348 (ntdll): (filename not available): KiUserExceptionDispatcher
c:\cygwin64\tmp\factorio-cjhs1v\src\manualbuilder.cpp (237): ManualBuilder::buildItem
c:\cygwin64\tmp\factorio-cjhs1v\src\controller\charactercontroller.cpp (377): CharacterController::buildItem
c:\cygwin64\tmp\factorio-cjhs1v\src\gameactionhandler.cpp (423): GameActionHandler::buildItem
c:\cygwin64\tmp\factorio-cjhs1v\src\gameactionhandler.cpp (207): GameActionHandler::actionPerformed
c:\cygwin64\tmp\factorio-cjhs1v\src\input\inputhandler.cpp (39): InputHandler::flushToListeners
c:\cygwin64\tmp\factorio-cjhs1v\src\input\inputhandler.cpp (33): InputHandler::flushActions
c:\cygwin64\tmp\factorio-cjhs1v\src\net\networkinputhandler.hpp (66): NetworkInputHandler::flushActions
c:\cygwin64\tmp\factorio-cjhs1v\src\net\networkinputhandler.cpp (667): NetworkInputHandler::applyAllTickClosures
c:\cygwin64\tmp\factorio-cjhs1v\src\net\multiplayermanager.cpp (1707): MultiplayerManager::tryAlignMap
c:\cygwin64\tmp\factorio-cjhs1v\src\net\multiplayermanager.cpp (660): MultiplayerManager::performMapTransferLogic
c:\cygwin64\tmp\factorio-cjhs1v\src\net\multiplayermanager.cpp (591): MultiplayerManager::update
c:\cygwin64\tmp\factorio-cjhs1v\src\mainloop.cpp (347): MainLoop::updateLoop
c:\boost_1_58_0\boost\function\function_template.hpp (160): boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void,void (__cdecl*)(ThreadBarrier * __ptr64,boost::chrono::time_point<boost::chrono::steady_clock,boost::chrono::duration<__int64,boost::ratio<1,1000000000> > > * __ptr64,boost::chrono::time_point<boost::chrono::steady_clock,boost::chrono::duration<__int64,boost::ratio<1,1000000000> > > * __ptr64,bool * __ptr64,bool),boost::_bi::list5<boost::_bi::value<ThreadBarrier * __ptr64>,boost::_bi::value<boost::chrono::time_point<boost::chrono::steady_clock,boost::chrono::duration<__int64,boost::ratio<1,1000000000> > > * __ptr64>,boost::_bi::value<boost::chrono::time_point<boost::chrono::steady_clock,boost::chrono::duration<__int64,boost::ratio<1,1000000000> > > * __ptr64>,boost::_bi::value<bool * __ptr64>,boost::_bi::value<bool> > >,void>::invoke
c:\cygwin64\tmp\factorio-cjhs1v\src\util\thread.cpp (34): Thread::loop
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 000000014017D333)
000000014017D333 (Factorio): (filename not available): boost::`anonymous namespace'::thread_start_function
f:\dd\vctools\crt\crtw32\startup\threadex.c (376): _callthreadstartex
f:\dd\vctools\crt\crtw32\startup\threadex.c (354): _threadstartex
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000778459ED)
00000000778459ED (kernel32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000077A7B371)
0000000077A7B371 (ntdll): (filename not available): RtlUserThreadStart
2498.971 Error Util.cpp:77: Unexpected error occurred. You can help us to solve the problem by posting the contents of the log file on the Factorio forums.
Greetings Loewchen

Re: [12.26] [Twinsen] Crash when leaving MP game while network disconnect

Posted: Thu Mar 24, 2016 2:06 pm
by Twinsen
According to the log and my tests, this was caused by trying to build things after pressing the quit button.

It should be fixed for 0.12.29. Thanks for the report.