adjust socket.dart with correct data types and timers