TLClient_JSSCOM_LuatOS-Air_V4010_RDA8910_RFTTS_0xe0000,2.8.7,864708068599557,28516560404268,
poweron reason:0
===08:54:51===
2026-05-19 08:54:49 >>>剩余flash空间=1682000,占用RAM为644.48828125
2026-05-19 08:54:49 >>>回调异常:911,initSys,30000,nil
===08:55:51===
上一时间戳为1779066518
隔日重置时间戳true
隔日清空未同步下发列表true
当前排队号为1,音量为5
初始化产品信息:[{"time_limit_date":"","ticket_category":"0","expiry_date":1,"product_detail":"凭小票剪发,建议当天使用,过期无效","time_limit_status":"0","begin_minute":"00","product_uid":"12711098232277608113","use_timer":1,"old_price":"12","end_hour":"23","sale_price":"12","end_minute":"59","begin_hour":"00","sale_status":1,"product_name":"男女快剪"}]
是否打印二维码设置为1
是否打印紧凑设置为3
当前号显示模式设置为1
当前卡项核销权限设置为0
session_id:48932****8f45e
纸币器设置接收纸币范围为36
欢迎使用天羚自助售票系统[2.8.7]
定时检测未同步订单启用[checkOrderNum=536870971]
2026-05-19 08:54:58>>>cash write=30
2026-05-19 08:54:58>>>cash write=02
2026-05-19 08:54:58>>>cash write=3E
2026-05-19 08:54:58>>>cash read=808F808F808F808F808F808F808F808F
系统时间初始化成功,时间为202651985458
2026-05-19 08:54:59>>>cash write=02
2026-05-19 08:54:59 >>>剩余flash空间=1680000,占用RAM为652.208984375
2026-05-19 08:54:59 >>>回调事件:910,subscribe,10000,连接服务器成功
2026-05-19 08:55:00 >>>剩余flash空间=1680000,占用RAM为625.248046875
2026-05-19 08:55:00 >>>回调事件:911,GetMqttQueue,500,暂无需要下发的信息,请求类型:ticket
2026-05-19 08:55:02>>>cash write=0C
2026-05-19 08:55:02>>>cash read=3E
流量卡还有316天过期
2026-05-19 08:55:10 >>>当前Ram内存为665.9111328125
===09:05:52===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 09:04:59 >>>回调事件[910,devices/TL2897]
当日首次设置时间戳true为1779152699
2026-05-19 09:04:59 >>>故障排除日志:上一MQTT订单号缓存列表为2605182014420095191947
2026-05-19 09:04:59 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 09:04:59 开始打印,排队:1,票券:2605190904516007955301,订单:2605190904510056965254,[2026-05-19 09:04:58微信支付12元]
2026-05-19 09:04:59>>>MQTT票号同步场景,创建空订单对象
2026-05-19 09:04:59>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 09:05:01 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605190904516007955301","queue_number":1,"trade_uid":"2605190904510056965254"}]}
2026-05-19 09:05:01 >>>故障排除日志:删除未同步下发订单成功2605190904510056965254
2026-05-19 09:05:01 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536871080]
===09:23:52===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 09:22:58 >>>回调事件[910,devices/TL2897]
2026-05-19 09:22:58 >>>故障排除日志:上一MQTT订单号缓存列表为2605190904510056965254
2026-05-19 09:22:58 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 09:22:58 开始打印,排队:2,票券:2605190922475006263701,订单:2605190922470048134349,[2026-05-19 09:22:56微信支付12元]
2026-05-19 09:22:58>>>MQTT票号同步场景,创建空订单对象
2026-05-19 09:22:58>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 09:23:00 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605190922475006263701","queue_number":2,"trade_uid":"2605190922470048134349"}]}
2026-05-19 09:23:00 >>>故障排除日志:删除未同步下发订单成功2605190922470048134349
2026-05-19 09:23:00 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536871249]
===10:10:52===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 10:10:06 >>>回调事件[910,devices/TL2897]
2026-05-19 10:10:06 >>>故障排除日志:上一MQTT订单号缓存列表为2605190922470048134349
2026-05-19 10:10:06 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 10:10:06 开始打印,排队:3,票券:2605191009560073039401,订单:2605191009550098902791,[2026-05-19 10:10:05微信支付12元]
2026-05-19 10:10:06>>>MQTT票号同步场景,创建空订单对象
2026-05-19 10:10:06>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 10:10:08 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191009560073039401","queue_number":3,"trade_uid":"2605191009550098902791"}]}
2026-05-19 10:10:08 >>>故障排除日志:删除未同步下发订单成功2605191009550098902791
2026-05-19 10:10:08 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536871681]
===11:48:53===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 11:47:57 >>>回调事件[910,devices/TL2897]
2026-05-19 11:47:57 >>>故障排除日志:上一MQTT订单号缓存列表为2605191009550098902791
2026-05-19 11:47:57 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 11:47:57 开始打印,排队:4,票券:2605191147475063454601,订单:2605191147470048708185,[2026-05-19 11:47:57微信支付12元]
2026-05-19 11:47:58>>>MQTT票号同步场景,创建空订单对象
2026-05-19 11:47:58>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 11:47:59 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191147475063454601","queue_number":4,"trade_uid":"2605191147470048708185"}]}
2026-05-19 11:47:59 >>>故障排除日志:删除未同步下发订单成功2605191147470048708185
2026-05-19 11:48:00 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536872568]
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 11:48:37 >>>回调事件[910,devices/TL2897]
2026-05-19 11:48:37 >>>故障排除日志:上一MQTT订单号缓存列表为2605191147470048708185
2026-05-19 11:48:37 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 11:48:37 开始打印,排队:5,票券:2605191148225470357401,订单:2605191148220052716412,[2026-05-19 11:48:36微信支付12元]
2026-05-19 11:48:37>>>MQTT票号同步场景,创建空订单对象
2026-05-19 11:48:37>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 11:48:39 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191148225470357401","queue_number":5,"trade_uid":"2605191148220052716412"}]}
2026-05-19 11:48:39 >>>故障排除日志:删除未同步下发订单成功2605191148220052716412
2026-05-19 11:48:39 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536872577]
===14:06:53===
2026-05-19 14:06:39>>>cash read=0A
2026-05-19 14:06:41>>>cash read=3E
===14:10:53===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 14:10:44 >>>回调事件[910,devices/TL2897]
2026-05-19 14:10:44 >>>故障排除日志:上一MQTT订单号缓存列表为2605191148220052716412
2026-05-19 14:10:44 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 14:10:44 开始打印,排队:6,票券:2605191410307850288701,订单:2605191410300076471739,[2026-05-19 14:10:42微信支付12元]
2026-05-19 14:10:44>>>MQTT票号同步场景,创建空订单对象
2026-05-19 14:10:44>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 14:10:46 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191410307850288701","queue_number":6,"trade_uid":"2605191410300076471739"}]}
2026-05-19 14:10:46 >>>故障排除日志:删除未同步下发订单成功2605191410300076471739
2026-05-19 14:10:46 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536873869]
===14:36:54===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 14:36:38 >>>回调事件[910,devices/TL2897]
2026-05-19 14:36:38 >>>故障排除日志:上一MQTT订单号缓存列表为2605191410300076471739
2026-05-19 14:36:38 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 14:36:38 开始打印,排队:7,票券:2605191436289289124101,订单:2605191436280091042654,[2026-05-19 14:36:37微信支付12元]
2026-05-19 14:36:38>>>MQTT票号同步场景,创建空订单对象
2026-05-19 14:36:38>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 14:36:40 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191436289289124101","queue_number":7,"trade_uid":"2605191436280091042654"}]}
2026-05-19 14:36:40 >>>故障排除日志:删除未同步下发订单成功2605191436280091042654
2026-05-19 14:36:40 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536874105]
===14:48:54===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 14:48:50 >>>回调事件[910,devices/TL2897]
2026-05-19 14:48:50 >>>故障排除日志:上一MQTT订单号缓存列表为2605191436280091042654
2026-05-19 14:48:50 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 14:48:50 开始打印,排队:8,票券:2605191448411042495401,订单:2605191448410008058674,[2026-05-19 14:48:49微信支付12元]
2026-05-19 14:48:50>>>MQTT票号同步场景,创建空订单对象
2026-05-19 14:48:50>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 14:48:52 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191448411042495401","queue_number":8,"trade_uid":"2605191448410008058674"}]}
2026-05-19 14:48:52 >>>故障排除日志:删除未同步下发订单成功2605191448410008058674
2026-05-19 14:48:52 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536874226]
===15:34:55===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 15:34:20 >>>回调事件[910,devices/TL2897]
2026-05-19 15:34:20 >>>故障排除日志:上一MQTT订单号缓存列表为2605191448410008058674
2026-05-19 15:34:20 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 15:34:20 开始打印,排队:9,票券:2605191534117358834301,订单:2605191534110071252265,[2026-05-19 15:34:19支付宝支付12元]
2026-05-19 15:34:20>>>MQTT票号同步场景,创建空订单对象
2026-05-19 15:34:20>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 15:34:22 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191534117358834301","queue_number":9,"trade_uid":"2605191534110071252265"}]}
2026-05-19 15:34:22 >>>故障排除日志:删除未同步下发订单成功2605191534110071252265
2026-05-19 15:34:22 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536874642]
===15:39:55===
2026-05-19 15:39:29>>>cash read=0A
2026-05-19 15:39:30>>>cash read=3E
===16:31:56===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 16:31:21 >>>回调事件[910,devices/TL2897]
2026-05-19 16:31:21 >>>故障排除日志:上一MQTT订单号缓存列表为2605191534110071252265
2026-05-19 16:31:21 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 16:31:21 开始打印,排队:10,票券:2605191631102647191801,订单:2605191631100024282093,[2026-05-19 16:31:19微信支付12元]
2026-05-19 16:31:21>>>MQTT票号同步场景,创建空订单对象
2026-05-19 16:31:21>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 16:31:23 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191631102647191801","queue_number":10,"trade_uid":"2605191631100024282093"}]}
2026-05-19 16:31:23 >>>故障排除日志:删除未同步下发订单成功2605191631100024282093
2026-05-19 16:31:23 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536875164]
===16:55:56===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 16:54:59 >>>回调事件[910,devices/TL2897]
2026-05-19 16:54:59 >>>故障排除日志:上一MQTT订单号缓存列表为2605191631100024282093
2026-05-19 16:54:59 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 16:54:59 开始打印,排队:11,票券:2605191654529659996801,订单:2605191654520094781715,[2026-05-19 16:54:58微信支付12元]
2026-05-19 16:54:59>>>MQTT票号同步场景,创建空订单对象
2026-05-19 16:54:59>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 16:55:01 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191654529659996801","queue_number":11,"trade_uid":"2605191654520094781715"}]}
2026-05-19 16:55:01 >>>故障排除日志:删除未同步下发订单成功2605191654520094781715
2026-05-19 16:55:01 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536875386]
===17:00:56===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 17:00:35 >>>回调事件[910,devices/TL2897]
2026-05-19 17:00:35 >>>故障排除日志:上一MQTT订单号缓存列表为2605191654520094781715
2026-05-19 17:00:35 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 17:00:35 开始打印,排队:12,票券:2605191700265545927101,订单:2605191700260053454735,[2026-05-19 17:00:35微信支付12元]
2026-05-19 17:00:36>>>MQTT票号同步场景,创建空订单对象
2026-05-19 17:00:36>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 17:00:37 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191700265545927101","queue_number":12,"trade_uid":"2605191700260053454735"}]}
2026-05-19 17:00:37 >>>故障排除日志:删除未同步下发订单成功2605191700260053454735
2026-05-19 17:00:38 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536875441]
===17:55:57===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 17:55:25 >>>回调事件[910,devices/TL2897]
2026-05-19 17:55:25 >>>故障排除日志:上一MQTT订单号缓存列表为2605191700260053454735
2026-05-19 17:55:25 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 17:55:25 开始打印,排队:13,票券:2605191755135665367801,订单:2605191755130054751363,[2026-05-19 17:55:24微信支付12元]
2026-05-19 17:55:25>>>MQTT票号同步场景,创建空订单对象
2026-05-19 17:55:25>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 17:55:27 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191755135665367801","queue_number":13,"trade_uid":"2605191755130054751363"}]}
2026-05-19 17:55:27 >>>故障排除日志:删除未同步下发订单成功2605191755130054751363
2026-05-19 17:55:27 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536875943]
===18:01:57===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 18:01:49 >>>回调事件[910,devices/TL2897]
2026-05-19 18:01:49 >>>故障排除日志:上一MQTT订单号缓存列表为2605191755130054751363
2026-05-19 18:01:49 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 18:01:49 开始打印,排队:14,票券:2605191801438003955701,订单:2605191801430078123028,[2026-05-19 18:01:48微信支付12元]
2026-05-19 18:01:49>>>MQTT票号同步场景,创建空订单对象
2026-05-19 18:01:49>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 18:01:51 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191801438003955701","queue_number":14,"trade_uid":"2605191801430078123028"}]}
2026-05-19 18:01:51 >>>故障排除日志:删除未同步下发订单成功2605191801430078123028
2026-05-19 18:01:51 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536876011]
===18:07:57===
2026-05-19 18:07:00>>>cash read=0A
2026-05-19 18:07:01>>>cash read=3E
===18:53:57===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 18:53:10 >>>回调事件[910,devices/TL2897]
2026-05-19 18:53:10 >>>故障排除日志:上一MQTT订单号缓存列表为2605191801430078123028
2026-05-19 18:53:10 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 18:53:10 开始打印,排队:15,票券:2605191853015148812101,订单:2605191853010049431541,[2026-05-19 18:53:09微信支付12元]
2026-05-19 18:53:10>>>MQTT票号同步场景,创建空订单对象
2026-05-19 18:53:10>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 18:53:12 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191853015148812101","queue_number":15,"trade_uid":"2605191853010049431541"}]}
2026-05-19 18:53:12 >>>故障排除日志:删除未同步下发订单成功2605191853010049431541
2026-05-19 18:53:12 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536876482]
===18:54:57===
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 18:54:01 >>>回调事件[910,devices/TL2897]
2026-05-19 18:54:01 >>>故障排除日志:上一MQTT订单号缓存列表为2605191853010049431541
2026-05-19 18:54:01 >>>故障排除日志:终端未同步成功订单列表
2026-05-19 18:54:01 开始打印,排队:16,票券:2605191853487653358401,订单:2605191853480074701247,[2026-05-19 18:54:00微信支付12元]
2026-05-19 18:54:01>>>MQTT票号同步场景,创建空订单对象
2026-05-19 18:54:01>>>合并MQTT票号列表到订单同步请求,共1张票
2026-05-19 18:54:03 排队号更新回调:{"return_code":"success","return_msg":"同步成功","data":[{"ticket_no":"2605191853487653358401","queue_number":16,"trade_uid":"2605191853480074701247"}]}
2026-05-19 18:54:03 >>>故障排除日志:删除未同步下发订单成功2605191853480074701247
2026-05-19 18:54:03 >>>故障排除日志:终端同步成功后剩余订单列表
定时检测未同步订单启用[checkOrderNum=536876499]
===20:19:58===
2026-05-19 20:19:28>>>cash read=0A
2026-05-19 20:19:29>>>cash read=3E
===20:51:58===
2026-05-19 20:51:19>>>cash read=00
2026-05-19 20:51:21>>>cash read=3E
2026-05-19 20:51:22>>>cash read=2F2901
2026-05-19 20:51:23>>>cash read=3E
2026-05-19 20:51:25>>>cash read=29
2026-05-19 20:51:25 >>>回调事件130,cash_status,20029,退钞中
2026-05-19 20:51:27>>>cash read=00
2026-05-19 20:51:28>>>cash read=292F29
2026-05-19 20:51:28 >>>回调事件130,cash_status,20029,退钞中
2026-05-19 20:51:29>>>cash read=3E
2026-05-19 20:51:31>>>cash read=00
2026-05-19 20:51:31>>>cash read=818F42
2026-05-19 20:51:31>>>cash write=02
2026-05-19 20:51:32 >>>回调事件130,cash_status,10022,进钞中...read money=10
2026-05-19 20:51:32>>>cash read=10
2026-05-19 20:51:32 >>>回调事件130,10,10023,finish Money=10,进钞完成
定时检测未同步订单关闭[lastTableNumForSync=0][lastOrderCheckTime=0]
2026-05-19 20:51:33>>>cash write=0C
2026-05-19 20:51:33>>>cash read=3E
2026-05-19 20:51:35>>>cash read=00
2026-05-19 20:51:36>>>cash read=818F40
2026-05-19 20:51:36>>>cash write=02
2026-05-19 20:51:36 >>>回调事件130,cash_status,10022,进钞中...read money=1
2026-05-19 20:51:37>>>cash read=10
2026-05-19 20:51:37 >>>回调事件130,1,10023,finish Money=1,进钞完成
2026-05-19 20:51:38>>>cash write=0C
2026-05-19 20:51:38>>>cash read=00
2026-05-19 20:51:39>>>cash read=818F40
2026-05-19 20:51:39>>>cash write=02
2026-05-19 20:51:39 >>>回调事件130,cash_status,10022,进钞中...read money=1
2026-05-19 20:51:39>>>cash read=10
2026-05-19 20:51:39 >>>回调事件130,1,10023,finish Money=1,进钞完成
2026-05-19 20:51:39 当前产品价格12元,投币12元,打印小票中...
2026-05-19 20:51:39 >>>开始打印,排队号为17,订单号为2605192051370012897059
2026-05-19 20:51:40>>>订单2605192051370012897059写入成功,剩余空间为1678500,占用RAM为636.3994140625
删除未同步订单2605192051370012897059
2026-05-19 20:51:42>>>订单2605192051370012897059删除成功,剩余空间为1679500,占用RAM为646.73828125
检测订单目录中>>>
无未同步订单>>>
2026-05-19 20:51:42 >>>当前Ram内存为615.78125
定时检测未同步订单启用[checkOrderNum=536877571]
2026-05-19 20:51:43>>>cash write=0C
2026-05-19 20:51:43>>>cash read=3E