【Golang】Windows系统键鼠空闲监测练习

 在本文中,我们将练习如何使用Golang编写一个简单的Windows系统空闲时间监测工具。该工具能够检测系统的空闲时间,并在达到一定阈值时计数。

功能概述

监控鼠标和键盘的空闲事件,每空闲超过50s,触发次数加一。

该工具具有以下功能:

  • 监测系统空闲时间。
  • 当系统空闲时间超过设定的阈值时,触发计数。
  • 实时显示当前系统触发次数。

代码实现

下载包

go get golang.org/x/sys/windows
go get github.com/getlantern/systray

以下是实现该工具的完整代码:

package mainimport ("fmt""time""unsafe""github.com/getlantern/systray""golang.org/x/sys/windows"
)// 配置参数
const (idleThreshold = 40 * time.Second
)var (user32           = windows.NewLazySystemDLL("user32.dll")kernel32         = windows.NewLazySystemDLL("kernel32.dll")getLastInputInfo = user32.NewProc("GetLastInputInfo")getTickCount     = kernel32.NewProc("GetTickCount")counter      uinttriggerTimes []stringlastActive   time.Time
)type LASTINPUTINFO struct {CbSize uint32Dtime  uint32
}func main() {systray.Run(onReady, onExit)
}func onReady() {// 设置托盘图标和菜单systray.SetIcon(IconData)systray.SetTitle("空闲监测")systray.SetTooltip("空闲监测运行中...")mHistory := systray.AddMenuItem("查看历史", "显示触发记录")mReset := systray.AddMenuItem("重置计数", "重置统计信息")mQuit := systray.AddMenuItem("退出", "退出程序")// 初始化记录lastActive = time.Now().Add(-getSystemIdleTime())updateTooltip()// 启动监测协程go monitorLoop()// 处理菜单点击go func() {for {select {case <-mHistory.ClickedCh:showHistory()case <-mReset.ClickedCh:resetCounter()case <-mQuit.ClickedCh:systray.Quit()return}}}()
}func monitorLoop() {for {idle := getSystemIdleTime()updateCounter(idle)updateTooltip()time.Sleep(time.Second)}
}func updateCounter(idle time.Duration) {if idle < idleThreshold {actualIdle := time.Since(lastActive)if actualIdle >= idleThreshold {counter++triggerTimes = append(triggerTimes, time.Now().Format("2006-01-02 15:04:05"))}lastActive = time.Now().Add(-idle)}
}func resetCounter() {counter = 0triggerTimes = nilupdateTooltip()
}func updateTooltip() {tooltip := fmt.Sprintf("空闲监测\n触发次数: %d\n最后触发: %s",counter,lastTriggerTime())systray.SetTooltip(tooltip)
}func lastTriggerTime() string {if len(triggerTimes) == 0 {return "从未触发"}return triggerTimes[len(triggerTimes)-1]
}func showHistory() {if len(triggerTimes) == 0 {showMessage("触发历史", "暂无触发记录")return}content := "触发时间记录:\n"for _, t := range triggerTimes {content += t + "\n"}showMessage("触发历史", content)
}func showMessage(title, message string) {windows.MessageBox(0,strPtr(message),strPtr(title),windows.MB_OK|windows.MB_ICONINFORMATION)
}func strPtr(s string) *uint16 {p, _ := windows.UTF16PtrFromString(s)return p
}func getSystemIdleTime() time.Duration {info := &LASTINPUTINFO{CbSize: uint32(unsafe.Sizeof(LASTINPUTINFO{}))}ret, _, _ := getLastInputInfo.Call(uintptr(unsafe.Pointer(info)))if ret == 0 {return 0}tick, _, _ := getTickCount.Call()lastInput := uint32(tick) - info.Dtimereturn time.Duration(lastInput) * time.Millisecond
}func onExit() {// 退出时的清理工作fmt.Print("\033[?25h") // 恢复光标显示(如果之前隐藏了)
}// 图标数据(需用2goarray生成)
var IconData []byte = []byte{// 这里填入实际的图标字节数据
}

go.mod

module idle-monitorgo 1.23.0toolchain go1.23.7require (github.com/getlantern/systray v1.2.2golang.org/x/sys v0.31.0
)require (github.com/getlantern/context v0.0.0-20190109183933-c447772a6520 // indirectgithub.com/getlantern/errors v0.0.0-20190325191628-abdb3e3e36f7 // indirectgithub.com/getlantern/golog v0.0.0-20190830074920-4ef2e798c2d7 // indirectgithub.com/getlantern/hex v0.0.0-20190417191902-c6586a6fe0b7 // indirectgithub.com/getlantern/hidden v0.0.0-20190325191715-f02dbb02be55 // indirectgithub.com/getlantern/ops v0.0.0-20190325191751-d70cb0d6f85f // indirectgithub.com/go-stack/stack v1.8.0 // indirectgithub.com/oxtoacart/bpool v0.0.0-20190530202638-03653db5a59c // indirect
)

需要使用 2goarray 生成图标的 bytes 变量并替换掉 IconData 变量,图标使用64×64 ico格式

下载后运行

go run 2goarray.go MyArray mypackage < myimage.ico > myimage.go

代码解析

  1. 配置参数:定义了空闲触发阈值和刷新间隔。
  2. 数据结构:定义了LASTINPUTINFO结构体,用于获取系统最后输入时间。
  3. 全局变量:定义了所需的全局变量,如用户32和内核32库的引用、触发次数等。
  4. 主函数:初始化显示、记录活动时间,并在循环中更新计数器和显示状态。
  5. 辅助函数:包括更新计数器、显示状态、初始化显示、启用虚拟终端处理和获取系统空闲时间。
    通过这个简单的工具,我们可以实时监测Windows系统的空闲时间,并在达到设定阈值时进行计数。

打包为exe

go build -ldflags="-H windowsgui" -o idle-monitor.exe

运行exe,右下角会出现相应图标
在这里插入图片描述
鼠标悬浮显示空闲段触发次数
在这里插入图片描述
在这里插入图片描述

右键查看历史会显示历史空闲
在这里插入图片描述
在这里插入图片描述

完整示例:

package mainimport ("fmt""time""unsafe""github.com/getlantern/systray""golang.org/x/sys/windows"
)// 配置参数
const (idleThreshold        = 50 * time.Second // 空闲触发阈值validTriggerInterval = 15 * time.Minute // 有效触发最小间隔
)const (IDYES = 6IDNO  = 7
)var (user32           = windows.NewLazySystemDLL("user32.dll")kernel32         = windows.NewLazySystemDLL("kernel32.dll")getLastInputInfo = user32.NewProc("GetLastInputInfo")getTickCount     = kernel32.NewProc("GetTickCount")counter          float32triggerTimes     []stringlastActive       time.TimelastValidTrigger time.Time // 记录上次有效触发时间
)type LASTINPUTINFO struct {CbSize uint32Dtime  uint32
}func main() {systray.Run(onReady, onExit)
}func onReady() {// 设置托盘图标和菜单systray.SetIcon(IconData)systray.SetTitle("空闲监测")systray.SetTooltip("空闲监测运行中...")mReset := systray.AddMenuItem("重置计数", "重置统计信息")mHistory := systray.AddMenuItem("查看历史", "显示触发记录")mQuit := systray.AddMenuItem("退出", "退出程序")// 初始化记录lastActive = time.Now().Add(-getSystemIdleTime())updateTooltip()// 启动监测协程go monitorLoop()// 处理菜单点击go func() {for {select {case <-mHistory.ClickedCh:showHistory()case <-mReset.ClickedCh:if confirmReset() {resetCounter()}case <-mQuit.ClickedCh:systray.Quit()return}}}()
}func monitorLoop() {for {idle := getSystemIdleTime()updateCounter(idle)updateTooltip()time.Sleep(time.Second)}
}func confirmReset() bool {result, _ := windows.MessageBox(0,strPtr("确定要重置所有统计信息吗?此操作不可撤销。"),strPtr("确认重置"),windows.MB_YESNO|windows.MB_ICONQUESTION)return result == IDYES
}func updateCounter(idle time.Duration) {if idle < idleThreshold {actualIdle := time.Since(lastActive)if actualIdle >= idleThreshold {// 检查是否满足有效触发间隔if lastValidTrigger.IsZero() || time.Since(lastValidTrigger) >= validTriggerInterval {counter += 0.3recordTime := time.Now().Format("2006-01-02 15:04:05")triggerTimes = append(triggerTimes, fmt.Sprintf("%s (空闲 %v)", recordTime, actualIdle.Round(time.Second)))lastValidTrigger = time.Now()}}lastActive = time.Now().Add(-idle)}
}func resetCounter() {counter = 0.0triggerTimes = nillastValidTrigger = time.Time{}updateTooltip()
}func updateTooltip() {tooltip := fmt.Sprintf("空闲监测\n当前积分: %.0f\n最后触发: %s",counter,lastTriggerTime())systray.SetTooltip(tooltip)
}func lastTriggerTime() string {if len(triggerTimes) == 0 {return "从未触发"}return triggerTimes[len(triggerTimes)-1]
}func showHistory() {if len(triggerTimes) == 0 {showMessage("触发历史", "暂无触发记录")return}content := "有效触发记录:\n"for i, t := range triggerTimes {content += fmt.Sprintf("%d. %s\n", i+1, t)}showMessage("触发历史", content)
}func showMessage(title, message string) {windows.MessageBox(0,strPtr(message),strPtr(title),windows.MB_OK|windows.MB_ICONINFORMATION)
}func strPtr(s string) *uint16 {p, _ := windows.UTF16PtrFromString(s)return p
}func getSystemIdleTime() time.Duration {info := &LASTINPUTINFO{CbSize: uint32(unsafe.Sizeof(LASTINPUTINFO{}))}ret, _, _ := getLastInputInfo.Call(uintptr(unsafe.Pointer(info)))if ret == 0 {return 0}tick, _, _ := getTickCount.Call()lastInput := uint32(tick) - info.Dtimereturn time.Duration(lastInput) * time.Millisecond
}func onExit() {// 退出时的清理工作fmt.Print("\033[?25h") // 恢复光标显示
}// 图标数据 (可以通过2goarray生成)
var IconData []byte = []byte{0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00,0x20, 0x00, 0x53, 0x15, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, 0x89, 0x50,0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48,0x44, 0x52, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x08, 0x06,0x00, 0x00, 0x00, 0xaa, 0x69, 0x71, 0xde, 0x00, 0x00, 0x00, 0x04, 0x67,0x41, 0x4d, 0x41, 0x00, 0x00, 0xb1, 0x8f, 0x0b, 0xfc, 0x61, 0x05, 0x00,0x00, 0x00, 0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xae, 0xce, 0x1c, 0xe9,0x00, 0x00, 0x00, 0x20, 0x63, 0x48, 0x52, 0x4d, 0x00, 0x00, 0x7a, 0x26,0x00, 0x00, 0x80, 0x84, 0x00, 0x00, 0xfa, 0x00, 0x00, 0x00, 0x80, 0xe8,0x00, 0x00, 0x75, 0x30, 0x00, 0x00, 0xea, 0x60, 0x00, 0x00, 0x3a, 0x98,0x00, 0x00, 0x17, 0x70, 0x9c, 0xba, 0x51, 0x3c, 0x00, 0x00, 0x14, 0xd1,0x49, 0x44, 0x41, 0x54, 0x78, 0x9c, 0xed, 0x9b, 0x7d, 0x90, 0x5e, 0x57,0x7d, 0xdf, 0x3f, 0xbf, 0xdf, 0x39, 0xf7, 0x3e, 0xf7, 0x79, 0x9e, 0x5d,0xed, 0xea, 0x0d, 0x4b, 0x96, 0x25, 0x59, 0x96, 0x05, 0x36, 0x36, 0x04,0x25, 0x0e, 0x8e, 0xb1, 0x79, 0xb1, 0xc1, 0x6e, 0x60, 0x42, 0x9c, 0x4c,0xd2, 0xd0, 0x66, 0x92, 0xe9, 0x14, 0xd3, 0xe9, 0x98, 0x74, 0x48, 0x08,0x49, 0x68, 0xe8, 0x84, 0x64, 0xc8, 0x10, 0xdc, 0xe9, 0xb8, 0x0e, 0x10,0xa0, 0x25, 0x19, 0xc2, 0x10, 0x66, 0x08, 0x69, 0xda, 0x02, 0xd3, 0x26,0x8c, 0x69, 0x0d, 0x04, 0xdb, 0x94, 0xda, 0x41, 0x26, 0x8e, 0xf1, 0x9b,0x64, 0xd9, 0xf2, 0x9b, 0x64, 0xbd, 0xad, 0xf6, 0xe5, 0x79, 0x9e, 0x7b,0xef, 0x39, 0xe7, 0xd7, 0x3f, 0xee, 0xdd, 0xd5, 0xae, 0xb5, 0x2b, 0x4b,0xf6, 0xca, 0xfd, 0x23, 0xf9, 0xcd, 0xec, 0xec, 0xdd, 0xbd, 0xe7, 0xf5,0x7b, 0x7e, 0xe7, 0xf7, 0x7e, 0xe1, 0x1f, 0xe9, 0x1f, 0x36, 0xc9, 0xff,0x8f, 0x49, 0xff, 0xdb, 0x9e, 0x7d, 0xfb, 0xf6, 0x0f, 0x2b, 0x92, 0x38,0xbc, 0x45, 0x32, 0x13, 0x26, 0x7a, 0x3d, 0x7e, 0x79, 0xf7, 0xb6, 0x9d,0x2f, 0xf7, 0x5a, 0xce, 0x29, 0x00, 0x5f, 0xf8, 0xee, 0xde, 0x9b, 0x1f,0x9e, 0x29, 0x70, 0x94, 0x9f, 0x8e, 0x9a, 0x11, 0x5d, 0x41, 0x10, 0x47,0xc2, 0x63, 0x1a, 0x30, 0x49, 0x88, 0xcd, 0x2f, 0xc4, 0x10, 0x03, 0xc5,0x48, 0xe5, 0x88, 0x8e, 0x4b, 0x6c, 0xe8, 0xbb, 0xa9, 0x89, 0x3c, 0x7e,0xe8, 0xa6, 0x1f, 0xdd, 0xf1, 0x99, 0x73, 0xb5, 0xc6, 0x73, 0x02, 0xc0,0x27, 0xef, 0x7c, 0x70, 0xee, 0xa9, 0xd2, 0x7a, 0xa5, 0x2b, 0xe8, 0xca,0x18, 0x21, 0x45, 0x22, 0x0e, 0xd3, 0x9c, 0x24, 0x4a, 0x42, 0x71, 0x04,0x16, 0x76, 0xbf, 0x88, 0x34, 0x25, 0x52, 0xac, 0x31, 0x81, 0x3c, 0x57,0xf2, 0x30, 0xa4, 0xa8, 0x86, 0xe4, 0xa9, 0x1c, 0x7c, 0xf0, 0x9f, 0xfc,0x48, 0x7f, 0xb5, 0xd7, 0xba, 0x6a, 0x00, 0x7c, 0xfc, 0xce, 0x07, 0x6e,0xb4, 0xd8, 0xf9, 0xca, 0xe1, 0x54, 0x30, 0xca, 0xc6, 0xa8, 0x70, 0xc4,0x18, 0xe8, 0x28, 0x18, 0x46, 0x32, 0x10, 0x11, 0xc0, 0x4e, 0x3b, 0xad,0xb3, 0x00, 0x16, 0x89, 0xce, 0x13, 0x7d, 0x07, 0x8b, 0x82, 0x44, 0x50,0x02, 0x1d, 0x3b, 0xce, 0x2b, 0x62, 0xcd, 0xe6, 0x5e, 0xe7, 0x67, 0x7e,0xe9, 0x27, 0xb6, 0x7f, 0x75, 0x35, 0xd6, 0xfd, 0x92, 0x01, 0xf8, 0x93,0x07, 0x0f, 0x8f, 0xef, 0x7f, 0xfc, 0xc9, 0xe9, 0xd1, 0xd8, 0x3a, 0x4a,0xe9, 0x92, 0xe8, 0xe1, 0x13, 0x74, 0x63, 0x45, 0x96, 0x6a, 0xa6, 0x3a,0x05, 0x88, 0x80, 0x25, 0x9c, 0x01, 0x24, 0x84, 0x84, 0xe1, 0x97, 0x1d,0xcf, 0x00, 0x24, 0x91, 0xd0, 0xf9, 0xbf, 0x70, 0x49, 0x01, 0x21, 0xa1,0x64, 0x8c, 0xe8, 0xa6, 0x59, 0xc6, 0xcb, 0xe3, 0x74, 0xe3, 0xc1, 0xe2,0x57, 0xdf, 0xf1, 0x8e, 0xf2, 0xa5, 0xac, 0x5f, 0x5f, 0x4a, 0xe7, 0xdb,0x6e, 0xff, 0xde, 0xa7, 0x1e, 0x3a, 0x3c, 0x98, 0x3e, 0x36, 0x7e, 0x31,0xae, 0x9e, 0x24, 0x0f, 0x05, 0x79, 0x8a, 0x88, 0x8c, 0x28, 0xb3, 0x92,0xb9, 0x4e, 0x8d, 0x9a, 0x21, 0x29, 0xa1, 0x4b, 0xb8, 0x5d, 0x11, 0x58,0xf6, 0xc7, 0x68, 0x64, 0x84, 0x60, 0xf8, 0x14, 0xe8, 0xa4, 0x8a, 0x8e,0x8d, 0x28, 0x62, 0x85, 0x37, 0x63, 0xe8, 0x72, 0x8e, 0x74, 0xc6, 0x78,0xb6, 0xbb, 0x81, 0x29, 0xbd, 0x70, 0xf4, 0x89, 0xaf, 0x3f, 0xf2, 0x9f,0x5f, 0xca, 0x1e, 0x5e, 0x34, 0x07, 0xfc, 0xfb, 0x6f, 0x3c, 0x6c, 0x53,0x7e, 0x82, 0x59, 0xed, 0x20, 0x3e, 0xc7, 0x85, 0x80, 0x52, 0xa3, 0x44,0x22, 0x42, 0xed, 0x3a, 0x04, 0x1c, 0x45, 0x1a, 0x61, 0xf3, 0xdb, 0x13,0xc1, 0xda, 0x1b, 0xb0, 0xe2, 0xc4, 0x36, 0x7f, 0xf2, 0x11, 0x21, 0x21,0x28, 0x58, 0x46, 0x02, 0xcc, 0x0d, 0xc1, 0x1c, 0x89, 0x0c, 0xef, 0x3d,0x75, 0x39, 0xa4, 0xc8, 0x1d, 0xeb, 0xc3, 0x53, 0x5c, 0xf4, 0x8a, 0x0d,0x17, 0xbd, 0xeb, 0x92, 0xcd, 0xfb, 0xcf, 0x39, 0x00, 0x7f, 0x7c, 0xcf,0xde, 0xab, 0xf7, 0x1f, 0x97, 0xdb, 0x67, 0xb2, 0x89, 0x9e, 0xb8, 0x0c,0x33, 0x88, 0x2a, 0x98, 0x1b, 0x91, 0x47, 0x43, 0x4d, 0xd1, 0x94, 0x61,0x56, 0x00, 0x1e, 0x73, 0x53, 0xa8, 0x59, 0x23, 0xdd, 0x81, 0x28, 0x19,0x49, 0x14, 0x31, 0x43, 0x96, 0x11, 0x82, 0x58, 0xa3, 0x11, 0xac, 0x5d,0x9e, 0x21, 0x18, 0xae, 0x11, 0x98, 0x32, 0xc2, 0x25, 0x07, 0xe6, 0x88,0x09, 0x2c, 0x53, 0x6a, 0x31, 0x8a, 0x34, 0xa2, 0x3b, 0x38, 0xca, 0xc6,0x6e, 0x7e, 0xcd, 0xaf, 0xbf, 0xe9, 0xe2, 0xbb, 0xce, 0x19, 0x00, 0xb7,0x7d, 0xf3, 0xe1, 0xd7, 0x1d, 0x9c, 0x0b, 0x7b, 0x46, 0x13, 0x17, 0x60,0x02, 0x59, 0x1a, 0x12, 0xf1, 0x24, 0x3a, 0x14, 0x31, 0x90, 0x04, 0xa2,0x40, 0x54, 0x6b, 0x40, 0x01, 0xb2, 0x04, 0x6a, 0x11, 0x25, 0x82, 0x41,0x14, 0x4f, 0x12, 0xbf, 0xb0, 0xb5, 0x97, 0x4a, 0x06, 0xa4, 0xe4, 0x28,0xa4, 0xa6, 0x18, 0x1e, 0xe1, 0xbc, 0x9c, 0xdd, 0xff, 0xe6, 0xda, 0x57,0xdd, 0x77, 0xa6, 0xfd, 0xcf, 0x18, 0x80, 0xdb, 0xbe, 0xf9, 0xf7, 0xaf,0x3b, 0x2e, 0x1b, 0xf6, 0x1c, 0xb3, 0x82, 0x5a, 0x1d, 0x1d, 0xad, 0xe8,0x58, 0x89, 0x99, 0x12, 0xe8, 0x02, 0x0e, 0x30, 0x4c, 0x22, 0x48, 0x00,0x09, 0x18, 0x42, 0xb2, 0x1e, 0x4a, 0x42, 0x2d, 0x2e, 0x9c, 0xac, 0x89,0x5b, 0x95, 0xcd, 0xcf, 0x93, 0x2a, 0xa4, 0x64, 0x48, 0x5d, 0xd1, 0xab,0xa7, 0xd9, 0x90, 0x57, 0xbb, 0xdf, 0x7f, 0xed, 0xe5, 0x67, 0x04, 0xc2,0x19, 0x09, 0xc1, 0xcf, 0xdc, 0xbd, 0xf7, 0xea, 0x43, 0xa3, 0x7c, 0xcf,0x8c, 0xf4, 0xd0, 0xcc, 0x93, 0x51, 0x23, 0x18, 0xc3, 0xa0, 0x54, 0xc9,0x23, 0x2e, 0x11, 0xfd, 0x0c, 0xc9, 0x0d, 0x11, 0x22, 0x2e, 0x3a, 0x7c,0xe8, 0x91, 0xd5, 0x3d, 0x48, 0x11, 0x33, 0xc3, 0xc4, 0x91, 0x44, 0x01,0x45, 0x2c, 0xbd, 0xa4, 0x0d, 0x2f, 0x21, 0x33, 0x88, 0x15, 0x49, 0x94,0xb2, 0x33, 0xc9, 0x4c, 0xb1, 0x81, 0xe3, 0x21, 0xdb, 0xf3, 0x99, 0xbb,0x1f, 0xba, 0xfa, 0x4c, 0xba, 0xbf, 0x20, 0x00, 0x5f, 0x7e, 0xe8, 0xf8,0x8e, 0x03, 0x27, 0xc2, 0x9d, 0x65, 0x7f, 0x3d, 0x26, 0x91, 0x4e, 0x9c,0x23, 0x97, 0x66, 0xc2, 0xee, 0x9a, 0x0d, 0x64, 0x2a, 0x6c, 0xb6, 0x01,0xbf, 0xb4, 0x6b, 0x2d, 0xaf, 0xef, 0x46, 0xb2, 0x63, 0x4f, 0xa0, 0x36,0x47, 0x9d, 0xc1, 0xb0, 0xa3, 0xf4, 0x7c, 0xc4, 0x5b, 0x8d, 0x90, 0x5a,0x01, 0xc7, 0xaa, 0x9e, 0x7e, 0x33, 0x9e, 0x20, 0xa9, 0x11, 0xb0, 0xc1,0x75, 0x18, 0xe6, 0x93, 0x3c, 0x35, 0x93, 0xee, 0xfc, 0xec, 0x7d, 0x8f,0xef, 0x78, 0xa1, 0xbe, 0xcb, 0x2b, 0xe3, 0x45, 0xb4, 0xf7, 0xa9, 0xc3,0x8f, 0x95, 0x6b, 0xb6, 0x50, 0xc6, 0x80, 0xb7, 0x48, 0x92, 0x56, 0x93,0x6b, 0x4e, 0x35, 0x9c, 0x63, 0xfd, 0xf0, 0x19, 0x6e, 0xba, 0xfe, 0x72,0x26, 0xeb, 0xc8, 0xeb, 0x76, 0x6f, 0xe2, 0x27, 0x77, 0x6f, 0xe2, 0xc0,0x74, 0xcd, 0x7d, 0x4f, 0x1e, 0xe4, 0x89, 0x43, 0x47, 0x89, 0x6e, 0x2d,0x4e, 0x73, 0x6a, 0x33, 0x02, 0xfe, 0xa4, 0x26, 0x58, 0x35, 0x12, 0x30,0x87, 0x92, 0xe8, 0xa4, 0x0a, 0x13, 0xa1, 0xb2, 0x0c, 0xe9, 0x9f, 0xcf,0xc1, 0xa3, 0x8f, 0x3f, 0xc6, 0x0b, 0x5c, 0xf3, 0xd3, 0xbe, 0xbc, 0xed,0xeb, 0x7f, 0xfb, 0xa9, 0x23, 0xdd, 0x0b, 0xde, 0x7b, 0xd8, 0x0a, 0xd4,0x6a, 0x72, 0xe7, 0x50, 0x69, 0xee, 0x71, 0xa5, 0x39, 0xfd, 0x34, 0xe0,0xfa, 0x4d, 0x35, 0xd7, 0xef, 0x5c, 0x4b, 0xb0, 0x84, 0xd3, 0x1c, 0x31,0x30, 0x13, 0x30, 0x21, 0x89, 0xf2, 0x18, 0xf0, 0xed, 0x3d, 0x4f, 0xb3,0xff, 0xf0, 0x09, 0xe8, 0x4e, 0x50, 0x6a, 0x4e, 0x22, 0xc3, 0xe4, 0x24,0xf3, 0x2d, 0xe6, 0x88, 0x56, 0x4a, 0x2c, 0x5d, 0x9c, 0xb5, 0x16, 0xa4,0x2c, 0x34, 0x62, 0x31, 0xf3, 0xaa, 0x49, 0xc3, 0x61, 0x18, 0xa2, 0x8e,0x88, 0x12, 0x70, 0x50, 0x1d, 0x64, 0x6b, 0x36, 0xf8, 0xec, 0x6f, 0xbd,0xe9, 0x35, 0xff, 0xfa, 0xac, 0x01, 0xf8, 0x93, 0x3b, 0x0f, 0x8f, 0x3f,0x32, 0x98, 0x9b, 0x1e, 0x75, 0xd7, 0xa2, 0x24, 0x24, 0x25, 0x40, 0x51,0x6a, 0xa2, 0x28, 0x41, 0x72, 0xba, 0xd5, 0x34, 0xef, 0xb9, 0xf2, 0x3c,0x76, 0x75, 0x4b, 0x8c, 0xee, 0xa9, 0x83, 0x58, 0xa3, 0xbd, 0x6a, 0x49,0x8c, 0xd4, 0xf1, 0xf4, 0x6c, 0xc9, 0xf7, 0x9f, 0x9a, 0xe6, 0x91, 0x43,0x73, 0x0c, 0xb5, 0xdb, 0xa8, 0x43, 0x75, 0x84, 0x04, 0x68, 0xd6, 0x3c,0x87, 0x1a, 0x15, 0x43, 0xac, 0xe9, 0xdc, 0x00, 0x92, 0xda, 0xc5, 0x36,0x82, 0x56, 0x4c, 0xda, 0x8d, 0x6b, 0x23, 0x68, 0x57, 0xb8, 0xc8, 0x95,0xeb, 0xd0, 0x1b, 0x1c, 0xa2, 0xac, 0x1e, 0x2c, 0x3e, 0xb9, 0x82, 0xc5,0xb8, 0xe2, 0x15, 0x78, 0x6e, 0xea, 0xc0, 0xb4, 0x8c, 0xef, 0x68, 0xc0,0x6e, 0x8d, 0x17, 0x23, 0x11, 0xc4, 0x35, 0x1d, 0x2d, 0x10, 0xa6, 0x8e,0xb2, 0xa1, 0xbb, 0x05, 0xac, 0x5e, 0x16, 0x4a, 0x13, 0x88, 0x4e, 0x49,0x01, 0xba, 0x44, 0x76, 0x8d, 0x79, 0x76, 0x5c, 0xb2, 0x91, 0xfa, 0xd2,0x8d, 0x4c, 0x27, 0xf8, 0xce, 0xfd, 0x8f, 0xb1, 0xf7, 0xe0, 0x71, 0x86,0x7e, 0x9c, 0xba, 0x98, 0x64, 0x28, 0x1d, 0xd4, 0x72, 0xf2, 0xe0, 0x48,0x62, 0x44, 0x17, 0x48, 0x5a, 0x91, 0xb4, 0x81, 0xc1, 0x25, 0x87, 0x98,0xd0, 0xb8, 0x14, 0x2d, 0x97, 0x48, 0x2b, 0x5b, 0x96, 0x99, 0x5f, 0xab,0x19, 0xe8, 0x8c, 0xb1, 0xae, 0xbe, 0x70, 0xc4, 0x0a, 0x87, 0xbd, 0xec,0x3f, 0x3f, 0xf6, 0x8d, 0x07, 0x6e, 0x1c, 0xb9, 0x35, 0x5f, 0x99, 0xf2,0x13, 0x24, 0x91, 0xc6, 0x41, 0x21, 0x61, 0x02, 0xa9, 0x35, 0x63, 0x8b,0x38, 0xe4, 0x8d, 0x17, 0xae, 0xe5, 0xad, 0xdb, 0x0a, 0x8a, 0x7a, 0x88,0xf9, 0xce, 0xa9, 0x00, 0x40, 0xc3, 0xea, 0xc9, 0x50, 0x4a, 0x14, 0x5b,0x60, 0xdf, 0xa8, 0x4a, 0x14, 0xcf, 0x1c, 0xc2, 0x73, 0xc3, 0x9a, 0x87,0x9e, 0x9b, 0xe5, 0x07, 0x8f, 0x3e, 0xc3, 0x6c, 0x36, 0x46, 0x99, 0xf5,0x11, 0x53, 0xc4, 0x14, 0x6d, 0x7f, 0x03, 0xd4, 0x2e, 0xb5, 0xd6, 0x43,0xc3, 0xf2, 0xce, 0x12, 0x4a, 0x20, 0xe1, 0x97, 0xdd, 0x49, 0xc6, 0x90,0x41, 0x2a, 0xc8, 0x70, 0x6c, 0x0b, 0xcf, 0x7c, 0xe4, 0xd7, 0xdf, 0x7a,0xe9, 0xef, 0x3e, 0xbf, 0xcd, 0xb2, 0x1c, 0x10, 0x7c, 0xfe, 0x95, 0x39,0xd7, 0x23, 0x69, 0x8e, 0xa6, 0x1a, 0x67, 0x89, 0xa0, 0x8a, 0x88, 0x34,0x5e, 0x5d, 0x8a, 0xb8, 0x6a, 0x96, 0xcb, 0xb7, 0x6e, 0xc2, 0x45, 0x03,0x59, 0x9e, 0x07, 0xc5, 0x40, 0x53, 0xc4, 0x14, 0x0c, 0x4f, 0x44, 0x5b,0xd3, 0x16, 0x5c, 0x6c, 0x2c, 0x07, 0x2f, 0x30, 0x5e, 0x78, 0xb6, 0x6d,0x9d, 0xe4, 0x86, 0xed, 0x93, 0x1c, 0x31, 0xe1, 0xdb, 0x0f, 0x3f, 0xc5,0xfe, 0xa7, 0x8f, 0x50, 0x67, 0x13, 0x0c, 0xa5, 0x47, 0x9d, 0xf5, 0x19,0x8e, 0x6a, 0xc6, 0xa9, 0x89, 0x92, 0x53, 0x99, 0xa0, 0x4e, 0x17, 0x44,0xc3, 0x4a, 0x1e, 0xa6, 0xa4, 0x46, 0x26, 0x0c, 0xb4, 0x60, 0x50, 0xf1,0x61, 0xe0, 0xcc, 0x00, 0x18, 0xfa, 0x2e, 0x65, 0x12, 0x20, 0xe1, 0x2c,0x02, 0x09, 0x43, 0xf1, 0x80, 0x99, 0xe2, 0xb3, 0x8c, 0x7c, 0x58, 0xd2,0x35, 0xc1, 0xbb, 0x80, 0xd5, 0x2b, 0xeb, 0x75, 0x69, 0xfb, 0x24, 0x01,0x93, 0xf6, 0xee, 0x2e, 0x7a, 0x29, 0x66, 0x78, 0x8b, 0x78, 0x8b, 0x10,0x12, 0x5b, 0x71, 0xfc, 0xf3, 0x8b, 0x37, 0x33, 0xbc, 0xe4, 0x02, 0x8e,0x06, 0xe3, 0x07, 0x87, 0x66, 0xb9, 0xe7, 0xd1, 0x27, 0xe8, 0xf9, 0x0e,0xb9, 0x75, 0xa8, 0x04, 0xc4, 0x15, 0x04, 0x9b, 0xe7, 0xb0, 0x15, 0xa7,0x26, 0x48, 0x86, 0x10, 0xc9, 0xac, 0x62, 0x90, 0x8d, 0xaf, 0xb8, 0xbe,0x25, 0xf4, 0x87, 0xdf, 0xf8, 0x3f, 0x73, 0x07, 0xb2, 0x2d, 0xbd, 0x21,0x3d, 0x9c, 0x64, 0x14, 0x16, 0x40, 0x22, 0x23, 0x97, 0xd3, 0x31, 0x23,0xc4, 0xc6, 0xb5, 0xbd, 0xea, 0xfc, 0xc0, 0x4f, 0xed, 0x5a, 0x4f, 0xd7,0x2a, 0x42, 0x14, 0xbc, 0x5b, 0x5e, 0x9c, 0x88, 0x29, 0x09, 0x48, 0x02,0x42, 0xa3, 0x4a, 0xb1, 0x44, 0x70, 0x6e, 0x41, 0x13, 0x98, 0x19, 0x2a,0xda, 0x68, 0x90, 0x14, 0x1b, 0x4d, 0x63, 0x8d, 0x80, 0x4c, 0x49, 0x09,0x01, 0xa2, 0x87, 0xff, 0xf9, 0xf8, 0x34, 0x0f, 0x3c, 0x71, 0x84, 0x91,0x1b, 0xa3, 0xd6, 0x8c, 0x24, 0x86, 0x5a, 0x22, 0xe1, 0x5a, 0x97, 0x7b,0xe9, 0x86, 0xac, 0x9d, 0x53, 0x48, 0x58, 0x84, 0x62, 0xe6, 0xe8, 0xe0,0x96, 0x77, 0xbe, 0x7a, 0x49, 0x50, 0xe5, 0x94, 0x55, 0xef, 0x2b, 0x2e,0xe8, 0x09, 0x3d, 0x72, 0x04, 0x2c, 0x12, 0x44, 0x00, 0xd7, 0x5c, 0x03,0xe7, 0x31, 0x8c, 0xb1, 0x6a, 0x8e, 0x2b, 0x2e, 0x38, 0x9f, 0x5e, 0xaa,0x01, 0x07, 0xce, 0x33, 0x2f, 0xa9, 0x9f, 0x4f, 0x26, 0x09, 0xa1, 0x39,0x75, 0x41, 0x49, 0x2d, 0x17, 0x88, 0xb1, 0x20, 0xcd, 0x9b, 0x86, 0x2d,0x60, 0xad, 0x90, 0x15, 0x11, 0x48, 0xa0, 0x24, 0x72, 0xdf, 0x34, 0xf8,0xe9, 0xed, 0x39, 0xef, 0xdc, 0xb1, 0x95, 0x99, 0xa0, 0x3c, 0x7c, 0x64,0xc8, 0xb7, 0xee, 0x7f, 0x8a, 0x69, 0xeb, 0x12, 0x8a, 0x09, 0x92, 0x19,0x45, 0x51, 0x90, 0x42, 0x44, 0xa4, 0xd5, 0x3e, 0x16, 0xa9, 0xb4, 0x4b,0x6e, 0x25, 0x8e, 0xc0, 0x6c, 0xf7, 0xfc, 0xde, 0xf3, 0xd7, 0xb7, 0xe4,0xf2, 0xfe, 0xa7, 0xdb, 0xef, 0xbb, 0xb9, 0xc1, 0x44, 0x1a, 0x07, 0x76,0xc1, 0x51, 0x6f, 0xfe, 0xb6, 0xba, 0x46, 0x63, 0x49, 0x3d, 0x7d, 0x94,0x75, 0xbd, 0xe6, 0x02, 0xda, 0x0a, 0x1b, 0x7f, 0x3e, 0xc9, 0xe2, 0x27,0x91, 0xc6, 0x7a, 0x9b, 0x1f, 0x7e, 0xc9, 0x8f, 0x9c, 0x6c, 0xbd, 0xe8,0x85, 0x89, 0x20, 0xd2, 0xa1, 0x23, 0x8e, 0xb5, 0x2e, 0x72, 0xe5, 0xe6,0x2e, 0xef, 0xbb, 0xe1, 0x55, 0xbc, 0xef, 0x6d, 0xdb, 0x79, 0xfb, 0x45,0xc2, 0x45, 0xfe, 0x20, 0x6b, 0x46, 0x4f, 0xd2, 0x49, 0xc7, 0x11, 0x17,0x18, 0x10, 0x70, 0x54, 0x38, 0x02, 0x86, 0x82, 0x08, 0xbd, 0x7e, 0x9f,0xdf, 0xfb, 0xab, 0x87, 0x6e, 0x5e, 0xbc, 0xae, 0x25, 0x1c, 0xe0, 0x3a,0xd9, 0x1f, 0x38, 0xc9, 0x48, 0xb6, 0x70, 0x20, 0x4b, 0xd1, 0x12, 0xa1,0x97, 0x22, 0xbb, 0x2f, 0xb9, 0x10, 0xb7, 0xb0, 0x2b, 0x6b, 0x55, 0xd1,0x19, 0xe1, 0xf0, 0x12, 0x48, 0x20, 0x09, 0x22, 0x42, 0x96, 0x22, 0xa4,0x92, 0x4c, 0x84, 0x35, 0x08, 0x1b, 0xb7, 0x14, 0xbc, 0x79, 0xdb, 0xa5,0x1c, 0x4b, 0xc6, 0x63, 0x27, 0x6a, 0xbe, 0xb5, 0x67, 0x2f, 0x12, 0x94,0x5e, 0x9e, 0x31, 0x67, 0x6b, 0xa8, 0x35, 0xc3, 0x10, 0x46, 0xd5, 0x88,0xf5, 0x99, 0xfc, 0x01, 0xb0, 0x10, 0x64, 0x5d, 0x02, 0xc0, 0x33, 0x83,0x7a, 0xd2, 0xfa, 0x1e, 0x64, 0xf9, 0x53, 0x4d, 0x26, 0x58, 0x18, 0xb1,0x7b, 0xc7, 0x7a, 0xf2, 0x79, 0x90, 0x04, 0xd4, 0xc2, 0xf3, 0x87, 0x5a,0x75, 0x12, 0x33, 0x72, 0x69, 0xa2, 0x4b, 0x88, 0xc3, 0x68, 0x64, 0x88,0x89, 0x50, 0xc4, 0x84, 0xa5, 0xc0, 0x26, 0x75, 0xac, 0x9f, 0xcc, 0xd9,0x7d, 0xed, 0xab, 0x19, 0x99, 0x71, 0xff, 0x33, 0x53, 0x7c, 0x6b, 0xff,0x90, 0x39, 0xd7, 0xc3, 0x2c, 0x52, 0xa7, 0xc8, 0xf1, 0x60, 0x93, 0x8b,0xc7, 0x5d, 0x72, 0x05, 0x06, 0xc5, 0x18, 0x82, 0x43, 0x6d, 0xf9, 0x70,0x95, 0xe6, 0x05, 0x3e, 0x73, 0xf4, 0x72, 0xdf, 0x46, 0xec, 0x72, 0xcc,0xdc, 0xcb, 0x96, 0x5c, 0x10, 0x02, 0x00, 0x49, 0x3c, 0x41, 0x73, 0x4a,0xf5, 0x94, 0xe2, 0x30, 0xc9, 0x10, 0x3c, 0xde, 0x8c, 0x6e, 0x55, 0x32,0x16, 0x4a, 0x36, 0xc6, 0x21, 0x3f, 0xb2, 0x79, 0x92, 0x71, 0x07, 0xc3,0xe1, 0x10, 0x51, 0x28, 0xc6, 0xba, 0xa4, 0x62, 0x69, 0x60, 0x79, 0x09,0x00, 0x95, 0x2f, 0x16, 0x8c, 0x8e, 0xe5, 0x68, 0xa6, 0xae, 0x19, 0x86,0xc0, 0xd1, 0xe3, 0x33, 0x24, 0x33, 0x62, 0x2b, 0x20, 0x97, 0x0b, 0xec,0xac, 0x3a, 0x49, 0x13, 0x4d, 0x8a, 0xea, 0x30, 0x01, 0xa5, 0xa6, 0x63,0x15, 0x85, 0x8d, 0x9a, 0x00, 0x8c, 0x4b, 0x44, 0x11, 0x52, 0x96, 0x93,0x9c, 0xc7, 0xb4, 0x43, 0x57, 0x81, 0x7a, 0x44, 0x77, 0xac, 0x4f, 0x55,0x07, 0x06, 0x83, 0x01, 0x31, 0xeb, 0xf0, 0xdf, 0x1f, 0x39, 0xfc, 0xc1,0x45, 0xc3, 0x36, 0xf4, 0xf9, 0x7b, 0xf6, 0xee, 0xdb, 0x13, 0x36, 0x5e,0xa4, 0x75, 0x63, 0xf2, 0x2e, 0x77, 0xac, 0xb5, 0x28, 0x59, 0x0a, 0xf4,0xe3, 0x0c, 0x1b, 0xf3, 0xc4, 0xd5, 0x97, 0x6f, 0x65, 0x47, 0x5f, 0x29,0x24, 0x90, 0xa5, 0x8a, 0x4c, 0x05, 0x49, 0x06, 0x28, 0x68, 0x4e, 0x1d,0x85, 0xe8, 0x1d, 0xbe, 0x1d, 0xce, 0x5c, 0xe3, 0xf8, 0x38, 0x33, 0x88,0xa1, 0x35, 0xaf, 0x69, 0x85, 0x1c, 0x80, 0xb5, 0x0f, 0xa7, 0x5e, 0xa7,0xc6, 0x23, 0x50, 0x94, 0x80, 0x48, 0x6c, 0x55, 0x26, 0x08, 0x9e, 0x9a,0x01, 0xa5, 0x1f, 0x67, 0x2a, 0x24, 0x8e, 0xd5, 0xc6, 0xc3, 0x8f, 0x4f,0x73, 0x64, 0x38, 0xe2, 0xd0, 0x4c, 0xcd, 0x40, 0x0a, 0x82, 0xe6, 0x58,0x6a, 0x9c, 0x2c, 0x27, 0xc2, 0x86, 0x34, 0xf5, 0xd8, 0x87, 0xde, 0x72,0xd1, 0x4e, 0x16, 0xcf, 0x34, 0x3b, 0x1c, 0x12, 0xbd, 0x36, 0xa1, 0xab,0x15, 0x28, 0x4f, 0x15, 0x26, 0xc6, 0x9c, 0x1f, 0x67, 0x14, 0x8d, 0xaf,0xee, 0x39, 0x44, 0x5e, 0xcf, 0xb0, 0xae, 0xab, 0xec, 0xde, 0xb9, 0x99,0x9d, 0x9b, 0xc6, 0xe8, 0xab, 0x91, 0xa5, 0x84, 0x23, 0x91, 0x79, 0x45,0xa8, 0x70, 0x26, 0x08, 0x4a, 0x68, 0x96, 0x8f, 0x9a, 0x2c, 0xa8, 0xd4,0x26, 0x1b, 0x24, 0x68, 0xe2, 0xa4, 0xcf, 0xb1, 0x0c, 0xf8, 0x8d, 0x2a,0x4d, 0x2d, 0x68, 0x4a, 0x6d, 0x09, 0x31, 0x87, 0x98, 0xf2, 0x47, 0x9f,0xfb, 0x0b, 0xee, 0x7d, 0x6a, 0x9a, 0x57, 0xbd, 0xf9, 0x9d, 0x54, 0xae,0x0b, 0x99, 0xa3, 0xc4, 0x13, 0x5c, 0xc1, 0xbc, 0x5e, 0xa1, 0x7d, 0x12,0x13, 0x06, 0xa3, 0x93, 0x7b, 0x5c, 0x00, 0x60, 0x6e, 0x6e, 0x96, 0x34,0x9e, 0x16, 0xc2, 0x91, 0xcb, 0x91, 0xb3, 0xe6, 0x7d, 0x25, 0x39, 0xc1,0x17, 0x8c, 0x6c, 0x1c, 0x74, 0x2d, 0x47, 0x62, 0xe0, 0xf1, 0x47, 0x46,0x74, 0x1e, 0x38, 0xcc, 0x06, 0x5f, 0xf1, 0xfa, 0x57, 0x5e, 0xc0, 0xc5,0x1b, 0x7b, 0x14, 0x4e, 0xe8, 0x1b, 0x6d, 0x04, 0x28, 0xe1, 0x70, 0x80,0x43, 0x04, 0x62, 0x7b, 0xfb, 0x7c, 0x0b, 0x82, 0x18, 0x4d, 0xf4, 0xd8,0x58, 0x51, 0x08, 0x0b, 0xd6, 0x04, 0x80, 0xc4, 0x31, 0x3d, 0x57, 0xf3,0x89, 0x3f, 0xfa, 0x34, 0xdf, 0xfc, 0xd6, 0x9d, 0x1c, 0x38, 0x1e, 0xf8,0xb5, 0x5b, 0x3f, 0xc3, 0x63, 0x75, 0x46, 0x2a, 0x3a, 0x68, 0x0c, 0x10,0x15, 0xef, 0x95, 0x05, 0x4f, 0xb2, 0x35, 0x9b, 0xcd, 0x8c, 0xe1, 0x70,0xee, 0x54, 0x00, 0xea, 0xba, 0x06, 0xc0, 0x52, 0x42, 0x74, 0x79, 0x39,0x10, 0xc5, 0xd1, 0x9c, 0x97, 0x60, 0xb1, 0x41, 0x51, 0x25, 0x12, 0x05,0x06, 0xd2, 0xa5, 0xd6, 0x9c, 0x3a, 0x8d, 0xf8, 0x1f, 0xf7, 0x1f, 0xa4,0xa7, 0x81, 0xb5, 0xfd, 0x0e, 0xd7, 0x5e, 0xb8, 0x9e, 0x5d, 0x9b, 0xd6,0xe0, 0xcd, 0x30, 0x0b, 0xa4, 0x7a, 0x40, 0x12, 0xa5, 0x23, 0x8d, 0xf3,0x24, 0x56, 0x83, 0x24, 0x4c, 0x94, 0xa0, 0x8d, 0x0d, 0xe2, 0x16, 0x9d,0x81, 0x99, 0x91, 0x52, 0xc2, 0xcc, 0xf0, 0x59, 0x46, 0x4c, 0xc6, 0xf7,0xff, 0xee, 0x21, 0xde, 0xff, 0x1b, 0xff, 0x8e, 0x51, 0x84, 0x68, 0x8e,0x58, 0x4c, 0x32, 0x94, 0x2e, 0xda, 0xcf, 0xa9, 0xa9, 0xf1, 0x96, 0x70,0x26, 0x98, 0x2d, 0xbd, 0xca, 0x22, 0x72, 0xca, 0xcd, 0x5e, 0x00, 0x40,0x9c, 0xc3, 0xcc, 0x5a, 0xa8, 0x96, 0xa7, 0x44, 0x06, 0x48, 0x63, 0xbf,0xd3, 0x58, 0x57, 0xce, 0x9a, 0xe0, 0x67, 0x2d, 0x05, 0x86, 0x52, 0x6a,0x17, 0xed, 0xf7, 0x08, 0x0a, 0xc3, 0x54, 0xf3, 0x4f, 0x6f, 0xfa, 0x00,0x33, 0x4f, 0xec, 0x63, 0xfb, 0xe6, 0xb5, 0xfc, 0xea, 0x6f, 0xfd, 0x0a,0xd7, 0x5d, 0xf7, 0x16, 0x72, 0xaf, 0x74, 0x02, 0xf8, 0x18, 0x5b, 0xde,0x36, 0x4c, 0x6b, 0xa2, 0x34, 0x61, 0xf5, 0xc5, 0x32, 0x40, 0x55, 0x31,0x33, 0x9c, 0xf7, 0xd4, 0x06, 0x7f, 0xfc, 0xf9, 0x2f, 0xf1, 0x85, 0x2f,0xfe, 0x17, 0x6a, 0xf3, 0x4d, 0xa2, 0x55, 0x95, 0xd7, 0x5e, 0xf9, 0x06,0xa6, 0x47, 0x03, 0x62, 0x0c, 0x14, 0x19, 0xf8, 0x94, 0x90, 0x26, 0x3a,0xb9, 0x88, 0x9f, 0x17, 0x99, 0x62, 0x8b, 0xf6, 0xb8, 0x30, 0x53, 0xe6,0x5a, 0x13, 0xf4, 0x34, 0x4a, 0x4d, 0xe6, 0xdd, 0xd9, 0xb6, 0x49, 0x44,0x09, 0x6d, 0x14, 0xc8, 0x99, 0x11, 0xa5, 0x61, 0xe3, 0xba, 0xaa, 0x51,0x67, 0x14, 0x1d, 0xc7, 0xe8, 0xe8, 0x51, 0x32, 0xcd, 0x38, 0x74, 0x6c,0x8e, 0xf7, 0xfc, 0xe6, 0xef, 0xf3, 0xbb, 0x9f, 0xd8, 0x44, 0x94, 0x1e,0xaf, 0xdd, 0xbe, 0x81, 0xcb, 0xb6, 0x8e, 0x31, 0x2e, 0x4a, 0x87, 0x84,0x27, 0xe0, 0xcd, 0xaf, 0xe8, 0xdd, 0x24, 0x83, 0x8f, 0xde, 0xfa, 0x49,0xbe, 0xf6, 0xb5, 0xdb, 0x31, 0x69, 0x92, 0x31, 0x31, 0x46, 0x66, 0xcb,0x39, 0x2e, 0x7b, 0xd3, 0x35, 0xc4, 0xa2, 0x43, 0xa1, 0x5d, 0x24, 0x96,0x08, 0x50, 0x8b, 0x27, 0x49, 0x93, 0x6d, 0x3e, 0x1d, 0x9d, 0xe4, 0x00,0x71, 0x90, 0x04, 0x55, 0x23, 0xd9, 0xa2, 0x5d, 0x2e, 0x21, 0x3b, 0x19,0xda, 0x46, 0x49, 0xe2, 0x1a, 0xdb, 0x5e, 0x04, 0x62, 0x13, 0xfa, 0x36,0x73, 0x88, 0x3a, 0x7c, 0x3d, 0xc3, 0xbd, 0xdf, 0xf9, 0x5f, 0xb8, 0x72,0x86, 0x5e, 0x2e, 0xcc, 0x02, 0x3f, 0x76, 0xed, 0x8d, 0x1c, 0x76, 0xe7,0x31, 0x8c, 0xca, 0x91, 0xa7, 0x4e, 0x70, 0xc7, 0xa3, 0x07, 0xd8, 0xdc,0xcf, 0xd9, 0xbd, 0x75, 0x3d, 0x17, 0x6f, 0x9c, 0x64, 0x6d, 0xd6, 0xc0,0xef, 0x30, 0x3c, 0x35, 0x92, 0x1a, 0x33, 0xd6, 0x34, 0xe7, 0x73, 0x5f,0xfc, 0x32, 0x5f, 0xfd, 0xab, 0x3b, 0x08, 0x26, 0x74, 0x05, 0x52, 0x5d,0x93, 0xf9, 0x8c, 0x32, 0x1a, 0xb2, 0x66, 0x3d, 0x65, 0x52, 0x5c, 0x9b,0x77, 0x6e, 0xd6, 0xa6, 0x6d, 0x3a, 0x2e, 0x36, 0x4e, 0x13, 0x0a, 0x26,0x98, 0x44, 0x5a, 0x77, 0x63, 0x29, 0x00, 0x93, 0x63, 0xe3, 0x74, 0xcc,0xe3, 0xa8, 0x5b, 0x00, 0x96, 0x65, 0x81, 0x85, 0x03, 0x6a, 0xf2, 0x35,0x86, 0xb3, 0x46, 0x3d, 0x21, 0x86, 0x5a, 0xdd, 0x48, 0xf9, 0xac, 0xc3,0xe6, 0x35, 0x6b, 0xf9, 0xf4, 0x7f, 0xfd, 0x12, 0x17, 0x64, 0x19, 0x55,0x3d, 0xcb, 0xc1, 0xe9, 0x92, 0x77, 0xff, 0xf4, 0x2f, 0x70, 0xb0, 0x72,0xe4, 0x1d, 0xc7, 0xc8, 0x0a, 0x28, 0x7a, 0x3c, 0x1e, 0xe0, 0xd9, 0x7d,0x35, 0xbd, 0x07, 0xf7, 0x32, 0xe9, 0x2a, 0x2e, 0xd9, 0xbe, 0x99, 0x4b,0xb6, 0xaf, 0x63, 0xbd, 0xcb, 0x10, 0x33, 0xca, 0x28, 0x3c, 0x37, 0x33,0xc5, 0xef, 0x7c, 0xea, 0xcf, 0x28, 0x8a, 0x35, 0x74, 0x73, 0x63, 0x54,0x0e, 0xc9, 0x82, 0x32, 0x92, 0x8c, 0x4b, 0xae, 0xbc, 0x86, 0x44, 0x86,0x73, 0xda, 0x6e, 0xb6, 0x59, 0x9f, 0x23, 0xe2, 0x52, 0xe3, 0x86, 0x07,0x17, 0x49, 0x41, 0xc8, 0xcd, 0x13, 0xa5, 0xa4, 0x3b, 0x76, 0xf2, 0x8a,0x2d, 0x3c, 0x6d, 0xd9, 0xb8, 0xf6, 0xb3, 0x0f, 0x3e, 0x5b, 0xde, 0x32,0x4a, 0x01, 0xb7, 0x82, 0x6b, 0xbb, 0x12, 0xa9, 0x35, 0x3c, 0x51, 0xab,0x12, 0xd4, 0xe8, 0xa4, 0x92, 0xa7, 0x1f, 0x7a, 0x94, 0xf5, 0x9a, 0x91,0x61, 0xd4, 0x59, 0x8f, 0x89, 0xcd, 0xe7, 0x31, 0x4c, 0x89, 0xac, 0x97,0x13, 0x08, 0x64, 0x75, 0x93, 0x22, 0xab, 0xd5, 0x33, 0x2d, 0x19, 0xb3,0x1d, 0xcf, 0x09, 0xad, 0x39, 0x78, 0xb0, 0xe6, 0x6f, 0xf6, 0xed, 0x67,0x6d, 0x1e, 0xd8, 0xbe, 0x79, 0x82, 0x3c, 0x73, 0xdc, 0xfb, 0xe8, 0x31,0x7e, 0xe5, 0x3f, 0x7c, 0x0e, 0x1b, 0xcd, 0xf2, 0xfd, 0x7b, 0xee, 0xe2,0xef, 0xbf, 0xf7, 0x5d, 0x46, 0x47, 0xa7, 0x19, 0x46, 0xe3, 0x17, 0x7f,0xfe, 0x17, 0x38, 0xb1, 0xc2, 0xba, 0x52, 0x7b, 0x60, 0x9a, 0x9a, 0xe7,0x24, 0x09, 0x9f, 0x02, 0x5b, 0xd6, 0x4d, 0x7e, 0x76, 0xd1, 0x99, 0x9e,0xa4, 0x7f, 0xfb, 0xcd, 0x67, 0xac, 0xcc, 0x7a, 0x8d, 0x30, 0x3c, 0x0b,0x92, 0xd4, 0xa4, 0x3f, 0x4b, 0x2f, 0x24, 0x49, 0xac, 0xad, 0x4b, 0xfe,0xec, 0xc3, 0x1f, 0x64, 0xe2, 0xc4, 0x11, 0xca, 0xe1, 0x1c, 0x83, 0xa2,0xcf, 0xfb, 0xff, 0xe3, 0xa7, 0x38, 0x9a, 0xf5, 0x99, 0x73, 0x1d, 0x42,0x4a, 0x74, 0x53, 0x93, 0x02, 0xaf, 0x35, 0x6b, 0xb2, 0xc1, 0x5e, 0x50,0x31, 0x42, 0x59, 0xd1, 0x71, 0x8a, 0xd4, 0x73, 0x48, 0xac, 0xf1, 0x9d,0x0e, 0x73, 0x35, 0x48, 0xd6, 0x23, 0xa7, 0x44, 0x2c, 0x92, 0xc5, 0x11,0x1b, 0xba, 0x7d, 0x8e, 0xcf, 0xce, 0x32, 0x65, 0x91, 0xac, 0x98, 0x7c,0xfe, 0x56, 0x1a, 0x32, 0x6d, 0x62, 0x01, 0x04, 0x82, 0x64, 0x78, 0x4b,0xf4, 0xd3, 0x0c, 0x1f, 0x7d, 0xcb, 0xf6, 0x85, 0xc6, 0x4b, 0xbd, 0xc1,0x30, 0x20, 0x48, 0x8e, 0x73, 0xee, 0xd4, 0xc1, 0x4e, 0x8f, 0x40, 0xeb,0x18, 0x17, 0xe4, 0xb1, 0x66, 0x9d, 0x06, 0xc2, 0xf4, 0x73, 0x8d, 0x54,0xee, 0xf7, 0x98, 0xca, 0x26, 0x38, 0x4e, 0xc1, 0x08, 0x07, 0x16, 0x50,0x55, 0x6a, 0x0d, 0xad, 0xf0, 0x4c, 0x78, 0xab, 0xd1, 0x4a, 0x50, 0x03,0x27, 0xda, 0x84, 0xd8, 0x7d, 0x07, 0xf1, 0x9e, 0x12, 0x45, 0xb3, 0x26,0xb5, 0x5a, 0xe3, 0x89, 0xce, 0x53, 0xa9, 0x23, 0x8e, 0x8c, 0x94, 0xf5,0x11, 0x3f, 0x6f, 0x11, 0x9e, 0x4a, 0x49, 0xc0, 0x25, 0xc1, 0xa1, 0xd4,0x6a, 0x04, 0x02, 0x36, 0x98, 0x59, 0xd2, 0x66, 0x09, 0x00, 0x5d, 0x6f,0x0c, 0xb2, 0x0e, 0x29, 0x85, 0xb3, 0x72, 0x70, 0x9a, 0x38, 0xa7, 0x90,0x91, 0xd1, 0x0b, 0x35, 0x5f, 0xfb, 0xd2, 0x9f, 0xd2, 0xf5, 0x89, 0x94,0x29, 0x65, 0x1d, 0xb8, 0xf2, 0x86, 0x77, 0x30, 0xe7, 0xfa, 0x04, 0x4d,0x78, 0xab, 0x90, 0xa4, 0x20, 0x19, 0x62, 0xa9, 0x11, 0xaa, 0x12, 0x01,0x23, 0x89, 0x21, 0x28, 0x1e, 0x6d, 0x84, 0x5f, 0xe3, 0x74, 0xe3, 0x68,0xa2, 0x48, 0x6a, 0x4d, 0x5c, 0xc0, 0xf0, 0xc4, 0x25, 0x39, 0x82, 0x15,0xbc, 0x57, 0xb1, 0x05, 0x43, 0xcb, 0x04, 0x8c, 0x88, 0x0f, 0xc3, 0x25,0x6d, 0x96, 0x58, 0x3c, 0xd3, 0xc3, 0xea, 0xbd, 0x55, 0x55, 0xad, 0xac,0x8a, 0xe6, 0x53, 0x18, 0x27, 0x73, 0x17, 0xcd, 0xe4, 0x12, 0x09, 0x6d,0xcd, 0xc7, 0xe6, 0xf1, 0x31, 0x1e, 0xba, 0xe7, 0x1e, 0x2c, 0xd6, 0x94,0x96, 0x38, 0x32, 0x33, 0xe0, 0x8d, 0x6f, 0xbb, 0x81, 0xca, 0xf9, 0x26,0xa8, 0x61, 0x86, 0x02, 0x9a, 0x3a, 0x48, 0x2a, 0x30, 0x32, 0x0c, 0xa5,0x72, 0xc2, 0xd0, 0x2b, 0xb5, 0x9b, 0x8f, 0x1f, 0x35, 0xb5, 0x44, 0x6d,0x6b, 0x94, 0x26, 0x76, 0xe8, 0x2c, 0xb5, 0x32, 0xa7, 0xdd, 0xc0, 0x69,0x6e, 0xab, 0x61, 0x98, 0xcc, 0x5b, 0x82, 0x8e, 0xdc, 0x79, 0x66, 0xab,0xf2, 0xbd, 0x2b, 0x02, 0x70, 0xe5, 0xb6, 0xb5, 0x87, 0xfb, 0x79, 0x6b,0x88, 0x98, 0x00, 0x01, 0xa8, 0x81, 0x08, 0x26, 0xd4, 0x9a, 0x11, 0x45,0xc9, 0x52, 0x24, 0x97, 0x8c, 0x2a, 0x0a, 0xe6, 0x12, 0x2e, 0x53, 0x48,0x0e, 0x37, 0x7c, 0x9a, 0xef, 0xdf, 0xf1, 0x65, 0xc6, 0x89, 0xa4, 0xa1,0x61, 0x29, 0x63, 0xdb, 0x15, 0xd7, 0x31, 0x1b, 0x85, 0xdc, 0xc7, 0xc6,0xea, 0xc3, 0x21, 0xc9, 0x63, 0x12, 0x30, 0xd7, 0x14, 0x4a, 0x09, 0x8a,0x4f, 0x9e, 0x4e, 0xf4, 0xf8, 0x34, 0x6f, 0x8f, 0xa4, 0x56, 0xad, 0xa5,0xf6, 0x34, 0x95, 0xca, 0x79, 0xa4, 0x05, 0x23, 0x69, 0x22, 0x69, 0xf3,0x7e, 0x25, 0x6e, 0xf5, 0x96, 0x80, 0x80, 0x89, 0xe0, 0xeb, 0x8c, 0x5e,0xed, 0xb8, 0x6c, 0xfb, 0x05, 0x87, 0x57, 0x04, 0xe0, 0xe7, 0x2e, 0x3f,0xff, 0x2f, 0xed, 0xd8, 0x81, 0x91, 0x50, 0x63, 0x92, 0x16, 0xa2, 0xae,0xd6, 0xa2, 0x59, 0x84, 0x8a, 0x5e, 0x28, 0x31, 0x49, 0x0c, 0x63, 0x24,0xb9, 0x02, 0x9f, 0x7a, 0x74, 0x86, 0x35, 0xaf, 0x18, 0x3c, 0xcd, 0x1b,0x77, 0x6e, 0xe0, 0x8a, 0x1d, 0xe7, 0xb1, 0xed, 0xbc, 0x35, 0xf4, 0xbb,0x8a, 0x85, 0x11, 0x3f, 0xfb, 0xee, 0x9b, 0x18, 0x9a, 0x92, 0xca, 0x44,0x96, 0x9a, 0x9c, 0x42, 0xd0, 0xd3, 0x79, 0x1c, 0xab, 0x47, 0x62, 0x0e,0xc8, 0x08, 0x02, 0xe2, 0x6b, 0x46, 0x53, 0x07, 0xb9, 0xe9, 0xc7, 0x2f,0xfc, 0xcb, 0xc5, 0x6d, 0x4e, 0xd1, 0x77, 0x3f, 0xba, 0x69, 0xec, 0xaf,0xef, 0x19, 0x86, 0x9f, 0xad, 0xf1, 0xcd, 0xeb, 0x79, 0x7f, 0xb5, 0x4d,0x88, 0x04, 0x31, 0x82, 0x33, 0x4a, 0x11, 0x7c, 0xaa, 0xd1, 0x99, 0x63,0x5c, 0xbd, 0x73, 0x0d, 0xd7, 0x5c, 0x7c, 0x19, 0x75, 0x34, 0x6e, 0xd8,0xfe, 0x56, 0xde, 0xf3, 0x53, 0xd7, 0xb2, 0xef, 0xe9, 0x83, 0xbc, 0xe3,0x5d, 0xbf, 0x48, 0xd5, 0x1f, 0x23, 0x84, 0x0e, 0x62, 0x19, 0x3e, 0x95,0x24, 0x49, 0x04, 0x07, 0xd9, 0xcb, 0x80, 0x80, 0x9a, 0x34, 0x36, 0xa6,0x8f, 0xe4, 0x69, 0x86, 0x6d, 0xeb, 0xb2, 0xc1, 0xf3, 0xdb, 0x2c, 0xcb,0x3d, 0xbf, 0x79, 0xfb, 0x5e, 0x1b, 0x91, 0xd3, 0xc9, 0xfa, 0x88, 0x68,0xdb, 0xcc, 0xa8, 0xc4, 0x63, 0x9a, 0x40, 0x46, 0x88, 0x18, 0xdd, 0x6a,0xc8, 0x8f, 0x6d, 0xc8, 0x79, 0xdb, 0xab, 0x36, 0x31, 0xa1, 0x4d, 0x6d,0x9f, 0x18, 0x48, 0x74, 0x54, 0xce, 0x71, 0xff, 0x33, 0x07, 0xf9, 0xf3,0xfd, 0x30, 0xb2, 0x1e, 0x4e, 0x0b, 0x7c, 0x1a, 0x81, 0xd4, 0x0c, 0x5d,0x4e, 0x66, 0xab, 0x53, 0x21, 0x72, 0x5a, 0x8a, 0x8d, 0x0b, 0x9e, 0xb4,0xa2, 0x3b, 0x78, 0x9a, 0x5b, 0x7f, 0xf2, 0xb5, 0xa7, 0xec, 0x77, 0x59,0x8b, 0x67, 0xef, 0xdd, 0x77, 0x7c, 0x64, 0xdd, 0xba, 0x0d, 0x1f, 0x9e,0x8b, 0x19, 0x29, 0x9d, 0x14, 0xb7, 0x95, 0x73, 0x40, 0xc0, 0x11, 0x10,0x4b, 0x3c, 0x3b, 0x75, 0x88, 0x5f, 0xfb, 0xd0, 0xcd, 0xf4, 0xd3, 0x2c,0x22, 0x79, 0x9b, 0xf8, 0x50, 0x50, 0x45, 0x53, 0x64, 0xd7, 0xd6, 0x4d,0x74, 0x1e, 0x7d, 0x9c, 0xda, 0x79, 0x6a, 0x15, 0x90, 0x88, 0xb3, 0xa6,0x6c, 0x46, 0xe0, 0x05, 0x72, 0xd3, 0x2f, 0x9d, 0x82, 0xd5, 0x24, 0xe7,0xe9, 0x90, 0x98, 0x24, 0xee, 0x59, 0xae, 0xcd, 0xb2, 0x00, 0x5c, 0x38,0x3e, 0x73, 0xcb, 0xd7, 0xbf, 0xf0, 0xc5, 0x0f, 0x5b, 0xec, 0x80, 0x65,0x34, 0x19, 0x87, 0xd8, 0x58, 0x52, 0x16, 0x71, 0xc9, 0x51, 0x46, 0xcf,0xf1, 0x99, 0x29, 0xfa, 0xbf, 0xfd, 0xaf, 0xf0, 0x79, 0x41, 0x6d, 0x8d,0x6a, 0xca, 0x00, 0x67, 0xe0, 0x9d, 0x23, 0xc7, 0x58, 0x23, 0x89, 0x5a,0x8d, 0x3a, 0x13, 0xea, 0x98, 0xd0, 0x00, 0x3e, 0x09, 0xf1, 0x74, 0xe2,0x7b, 0x95, 0x48, 0x72, 0x45, 0x51, 0xd2, 0xf4, 0x1c, 0xbd, 0x89, 0xe1,0xb2, 0x15, 0x23, 0xcb, 0x3a, 0xfe, 0xb7, 0x7d, 0xe0, 0x03, 0xc3, 0x9d,0x3b, 0xb7, 0xde, 0x3a, 0xf4, 0x35, 0xce, 0x02, 0x63, 0x75, 0x45, 0x66,0x43, 0x9c, 0x55, 0x98, 0x41, 0xe9, 0x0c, 0xcb, 0x03, 0x63, 0xfd, 0x80,0x27, 0x82, 0x19, 0x8a, 0xe0, 0x11, 0xa2, 0x08, 0xa5, 0xc2, 0x88, 0x44,0x9d, 0x12, 0xcf, 0xe9, 0x18, 0xb5, 0x64, 0xe8, 0xa8, 0x26, 0x8b, 0x4d,0x34, 0x37, 0x6a, 0x64, 0xb5, 0x02, 0x89, 0x4d, 0x41, 0x9d, 0x43, 0x93,0x90, 0x87, 0x46, 0xea, 0x27, 0x09, 0x60, 0x89, 0x92, 0x0e, 0xdd, 0x38,0x60, 0xdd, 0xec, 0x13, 0xb7, 0x7e, 0xe0, 0x0d, 0x6f, 0x18, 0x2e, 0xd7,0x7f, 0x45, 0x93, 0xef, 0x91, 0x07, 0xee, 0xbf, 0xfd, 0xbc, 0x2d, 0x3b,0x7f, 0xa7, 0x72, 0x5d, 0x9d, 0xcb, 0x0a, 0x86, 0x59, 0x81, 0x93, 0x2e,0x2a, 0x3d, 0xcc, 0xf5, 0x40, 0x32, 0x9c, 0x29, 0xe3, 0xbd, 0x71, 0x2e,0xdb, 0x75, 0x09, 0xb9, 0x36, 0x9a, 0xdb, 0x11, 0x90, 0x10, 0xa9, 0x22,0x4c, 0x0d, 0x03, 0x77, 0x1f, 0x8a, 0xc4, 0xd6, 0x54, 0x56, 0x6d, 0x12,0x14, 0xab, 0xc9, 0xfa, 0xf3, 0x11, 0x6b, 0x9f, 0x1a, 0x23, 0x29, 0xa8,0xa7, 0x56, 0x87, 0xa0, 0xb8, 0x50, 0xc2, 0xb1, 0x27, 0xe3, 0x2d, 0x3f,0x77, 0xd5, 0x35, 0x2b, 0xf5, 0x3f, 0xad, 0xd7, 0xf3, 0x2f, 0xfe, 0xd9,0x2f, 0x5f, 0x3f, 0xdc, 0xb0, 0xf9, 0x8e, 0xa3, 0x9d, 0x31, 0x24, 0x75,0xc9, 0x2d, 0x60, 0x62, 0x8d, 0x76, 0xb6, 0x48, 0xc7, 0x27, 0x7e, 0x30,0x7b, 0x8c, 0xab, 0x5c, 0xce, 0x2e, 0xd7, 0xd4, 0x0c, 0x60, 0x89, 0xca,0x65, 0xcc, 0x88, 0xe3, 0x2b, 0xdf, 0x79, 0x04, 0xe9, 0x6e, 0xc1, 0x8b,0x9c, 0xb5, 0x7f, 0x71, 0x76, 0x14, 0xdb, 0x22, 0x6c, 0x47, 0xa5, 0xae,0xb5, 0x00, 0x13, 0x13, 0x61, 0x9a, 0x1d, 0x17, 0xbc, 0xe2, 0xfa, 0xd3,0xf5, 0x7c, 0xc1, 0xb3, 0xf8, 0xfd, 0x6f, 0xdf, 0xb7, 0x63, 0x5a, 0xd6,0x3c, 0x26, 0xba, 0x8e, 0x32, 0x06, 0xa2, 0x6f, 0x8a, 0x51, 0x9a, 0xcc,0x6e, 0xc0, 0x5b, 0xa0, 0x88, 0x25, 0xaf, 0x9d, 0xec, 0xf2, 0xfa, 0x57,0xae, 0x47, 0x05, 0xf6, 0x1e, 0x2a, 0xb9, 0x6b, 0xef, 0x73, 0xcc, 0xb9,0x09, 0xa2, 0xba, 0x73, 0x2c, 0xec, 0x1a, 0x53, 0x5a, 0x63, 0x4e, 0x14,0x4f, 0xe5, 0xc0, 0x5b, 0x45, 0xaf, 0x1a, 0x30, 0x3a, 0x76, 0xe0, 0x95,0x9f, 0xf8, 0xf9, 0xab, 0x1e, 0x3d, 0x5d, 0xef, 0x33, 0x5a, 0xda, 0x1f,0x7e, 0x77, 0xdf, 0x3d, 0xcf, 0x96, 0x9d, 0x2b, 0x82, 0x75, 0x11, 0xf1,0x0b, 0xca, 0x4b, 0xe6, 0x4d, 0x24, 0x49, 0x24, 0x46, 0x64, 0x71, 0x84,0x13, 0xc3, 0xb2, 0x2e, 0x03, 0xfa, 0x94, 0x5a, 0x50, 0xc4, 0xe1, 0x39,0xdd, 0xbf, 0x61, 0x24, 0x89, 0xb8, 0x94, 0x93, 0x70, 0x18, 0x15, 0xfd,0x34, 0x4d, 0x71, 0xe2, 0xe0, 0xbd, 0xbf, 0x77, 0xe3, 0x4f, 0xfc, 0xf8,0x0b, 0xf5, 0x3f, 0xe3, 0xb5, 0x7d, 0xf4, 0x7f, 0xff, 0xdd, 0x0f, 0xa7,0xb2, 0x8d, 0x97, 0x46, 0x9b, 0xaf, 0x04, 0x91, 0x36, 0xc2, 0xa2, 0x24,0x8c, 0xa4, 0x8d, 0xd3, 0x81, 0x45, 0x9c, 0x73, 0x58, 0x32, 0x54, 0x1d,0x29, 0xc5, 0x73, 0xca, 0x01, 0x06, 0x44, 0x4d, 0xb8, 0xe8, 0x11, 0x84,0x9c, 0x39, 0xdc, 0xf1, 0x7d, 0x0f, 0x7e, 0xec, 0xc6, 0x6b, 0x5e, 0x7d,0x26, 0xfd, 0xcf, 0x6a, 0x69, 0xbf, 0xfd, 0xf5, 0xff, 0xfb, 0x43, 0x1b,0xdf, 0x74, 0x69, 0x08, 0x7d, 0x82, 0x15, 0x24, 0x85, 0xa4, 0x43, 0x4c,0x0c, 0x8b, 0x7d, 0x84, 0x84, 0x17, 0x83, 0x54, 0xe3, 0x68, 0x2a, 0x43,0xa3, 0xf8, 0xd3, 0x06, 0x5a, 0xcf, 0x98, 0x4c, 0xd0, 0xe4, 0x89, 0x5a,0x53, 0xbb, 0x1a, 0x13, 0x21, 0x0b, 0x39, 0x3e, 0x65, 0x54, 0xe2, 0x10,0x2d, 0x91, 0x74, 0x14, 0x3b, 0x7e, 0xe0, 0xc1, 0x4f, 0xfe, 0xcc, 0x9b,0xcf, 0x68, 0xf3, 0xf0, 0x22, 0xce, 0xe6, 0xe3, 0x7f, 0xf3, 0xd0, 0x3d,0x87, 0x53, 0x71, 0xc5, 0x09, 0x9d, 0x20, 0xa9, 0x27, 0x4b, 0x35, 0x3e,0x45, 0x92, 0xf8, 0x36, 0xa3, 0x24, 0xad, 0x17, 0xa6, 0x0b, 0xf1, 0xd3,0xd5, 0x60, 0x80, 0x79, 0x07, 0x54, 0x89, 0x4d, 0xec, 0x11, 0x69, 0xca,0xed, 0xc8, 0x48, 0xaa, 0x74, 0xe3, 0x34, 0xdd, 0xc1, 0xb3, 0xf7, 0x7e,0xe4, 0xed, 0xbb, 0x5f, 0x90, 0xed, 0x17, 0xd3, 0x8b, 0x5a, 0xdb, 0x9f,0xde, 0xbf, 0xff, 0xe9, 0x3d, 0x27, 0x86, 0xe7, 0xd7, 0x6e, 0x1d, 0xdd,0xb2, 0x4f, 0x11, 0x84, 0xe4, 0x67, 0x9a, 0x28, 0xb1, 0x38, 0x92, 0xf8,0x85, 0x42, 0x88, 0xd3, 0x79, 0x6b, 0x67, 0x43, 0x46, 0xa2, 0xf2, 0x35,0x79, 0xf0, 0x74, 0x82, 0x47, 0x48, 0x04, 0x0d, 0xd4, 0x3e, 0xa0, 0xe5,0x09, 0x2e, 0xea, 0xe4, 0xcf, 0xbc, 0xef, 0xea, 0x9d, 0x5b, 0xce, 0x76,0xdc, 0x17, 0xf5, 0xc1, 0xc4, 0xbf, 0x7c, 0xcd, 0x8e, 0x2d, 0xe7, 0x85,0xb9, 0xeb, 0xd6, 0x0f, 0x8e, 0x46, 0xa5, 0x66, 0xce, 0x3b, 0x06, 0xda,0x67, 0xe8, 0xfa, 0xd4, 0xda, 0x25, 0x4a, 0x93, 0x62, 0x73, 0x56, 0x35,0xf5, 0x7e, 0xab, 0x40, 0x62, 0x90, 0xd7, 0xca, 0x08, 0xcf, 0x54, 0x27,0x67, 0xd6, 0x3b, 0x34, 0x96, 0xac, 0x1f, 0xcc, 0xb1, 0x39, 0xcd, 0x5e,0xf7, 0x62, 0x36, 0x0f, 0xab, 0xc0, 0x9d, 0x1f, 0xff, 0xde, 0x93, 0xf6,0xf8, 0x6c, 0xa2, 0x92, 0x35, 0xb8, 0x6e, 0x8f, 0xb9, 0xc1, 0x88, 0x6e,0xae, 0x78, 0x1b, 0xe1, 0x88, 0x44, 0xf2, 0x55, 0x91, 0x01, 0x9a, 0x20,0xc3, 0x33, 0xe3, 0x12, 0x23, 0xad, 0x28, 0xaa, 0x19, 0x2e, 0x4a, 0x91,0xdf, 0xb8, 0x6e, 0xd7, 0x4b, 0x1a, 0x7c, 0x55, 0xe4, 0xf3, 0xad, 0x77,0xdf, 0xdd, 0x1d, 0x4d, 0xf7, 0xef, 0xaa, 0xb3, 0xde, 0xee, 0x19, 0x7a,0x84, 0xbc, 0x87, 0xb5, 0xe9, 0xd0, 0xd3, 0x18, 0x9b, 0x67, 0x47, 0xd6,0xe6, 0x11, 0x47, 0xc7, 0x59, 0xeb, 0xe6, 0x38, 0x7c, 0x64, 0xb6, 0x77,0xdb, 0xbb, 0x96, 0x37, 0x6f, 0xcf, 0x86, 0x56, 0x5d, 0x41, 0x7d, 0xf4,0xaf, 0xff, 0x76, 0x6e, 0x58, 0x6c, 0xe8, 0x0d, 0x74, 0x8c, 0x5a, 0x7c,0x53, 0xc4, 0xd9, 0x26, 0x3f, 0x5b, 0xaf, 0xba, 0xad, 0x2a, 0x49, 0xa7,0xba, 0x03, 0x6d, 0xd2, 0x34, 0xc9, 0x7c, 0x21, 0x64, 0x68, 0x85, 0x5e,0x42, 0x2d, 0xa0, 0xc3, 0xa9, 0xc1, 0x2d, 0x6f, 0x7f, 0xcd, 0xaa, 0x7e,0x3a, 0x77, 0xce, 0x34, 0xf4, 0xc7, 0x6e, 0x7f, 0xe4, 0xe6, 0xa8, 0xfe,0xd3, 0x47, 0xa3, 0x52, 0xf4, 0x7a, 0x24, 0x53, 0x6a, 0x6b, 0xbe, 0x04,0x12, 0xcd, 0xb0, 0x45, 0x65, 0x45, 0x4d, 0x66, 0xb8, 0xc9, 0x48, 0xa9,0x08, 0xaa, 0x09, 0x1f, 0x86, 0x68, 0x35, 0xc5, 0x84, 0x8f, 0x94, 0xc3,0xd9, 0xf7, 0x7e, 0xe4, 0x9d, 0x57, 0x9d, 0x93, 0x8f, 0x27, 0x5f, 0xae,0xea, 0x16, 0x3e, 0x7f, 0xd7, 0x0f, 0x1f, 0x3d, 0x70, 0x78, 0x4a, 0x2b,0xed, 0x3b, 0x2d, 0x8a, 0xed, 0x95, 0x9e, 0xd4, 0x14, 0xf3, 0xd9, 0xdf,0x51, 0x19, 0x9e, 0x58, 0x13, 0x87, 0x71, 0xd7, 0xda, 0x2e, 0xef, 0x7e,0xf3, 0xa5, 0x2f, 0xfb, 0x67, 0xb4, 0xff, 0x48, 0xff, 0x10, 0xe9, 0xff,0x01, 0xf3, 0x2b, 0x33, 0x8f, 0xe9, 0x1d, 0xa1, 0xc8, 0x00, 0x00, 0x00,0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/899847.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于React Redux

官网&#xff1a;&#x1f449;详情一 &#x1f449;详情二 &#x1f449;关于redux 使用原因&#xff1a;&#x1f449;详情 /** 2-1、随着javascript单页应用程序的发展&#xff0c;需要在代码中管理更多的状态&#xff08;包括服务器响应数据、缓存数据、本地创建还未发送…

MySQL和Oracle批量插入SQL差异详解

文章目录 MySQL和Oracle批量插入SQL差异详解1. 基本批量插入语法1.1 MySQL批量插入1.2 Oracle批量插入 2. 带序列的批量插入2.1 MySQL带自增ID的批量插入2.2 Oracle带序列的批量插入 3. 条件批量插入3.1 MySQL条件批量插入3.2 Oracle条件批量插入 MySQL和Oracle批量插入SQL差异…

43页可编辑PPT | 大数据管理中心设计规划方案大数据中心组织架构大数据组织管理

这份文档是一份关于大数据管理中心规划设计方案的详细报告&#xff0c;涵盖了背景与需求分析、整体规划方案、关键能力实现方案以及实施方案等内容。报告强调大数据在城市治理中的重要性&#xff0c;提出通过构建统一的大数据平台&#xff0c;整合城市各部门数据资源&#xff0…

Python-八股总结

目录 1 python 垃圾处理机制2 yield3 python 多继承&#xff0c;两个父类有同名方法怎么办&#xff1f;4 python 多线程/多进程/协程4.1 多线程与GIL全局解释器锁4.2 多进程4.3 协程 5 乐观锁/悲观锁6 基本数据结构**1. 列表&#xff08;List&#xff09;****2. 元组&#xff0…

HTML 标签类型全面介绍

HTML 标签类型全面介绍 HTML&#xff08;HyperText Markup Language&#xff09;是构建 Web 页面结构的基础语言。HTML 由不同类型的标签组成&#xff0c;每种标签都有特定的用途。本文将全面介绍 HTML 标签的分类及其用法。 1. HTML 标签概述 HTML 标签通常成对出现&#xf…

vscode中的【粘滞滚动】的基本概念和作用,关闭了以后如何开启

1、粘滞滚动的基本概念和作用 ‌VSCode中的“粘滞”功能主要是指编辑器在滚动时的一种特殊效果&#xff0c;使得编辑器在滚动到某个位置时会“粘”在那里&#xff0c;而不是平滑滚动到底部或顶部。‌ 粘滞滚动的基本概念和作用 粘滞滚动功能可以让用户在滚动时更直观地看到当前…

【商城实战(101)】电商未来已来:新技术引领商城发展新航向

【商城实战】专栏重磅来袭!这是一份专为开发者与电商从业者打造的超详细指南。从项目基础搭建,运用 uniapp、Element Plus、SpringBoot 搭建商城框架,到用户、商品、订单等核心模块开发,再到性能优化、安全加固、多端适配,乃至运营推广策略,102 章内容层层递进。无论是想…

深度学习Note.5(机器学习.6)

1.Runner类 一个任务应用机器学习方法流程&#xff1a; 数据集构建 模型构建 损失函数定义 优化器 模型训练 模型评价 模型预测 所以根据以上&#xff0c;我们把机器学习模型基本要素封装成一个Runner类&#xff08;加上模型保存、模型加载等功能。&#xff09; Runne…

linux服务器专题1------redis的安装及简单配置

在 linux上安装 Redis 可以按照以下步骤进行(此处用Ubuntu 服务器进行讲解)&#xff1a; 步骤 1: 更新系统包 打开终端并运行以下命令以确保你的系统是最新的&#xff1a; sudo apt update sudo apt upgrade步骤 2: 安装 Redis 使用 apt 包管理器安装 Redis&#xff1a; s…

面试问题总结:qt工程师/c++工程师

C 语言相关问题答案 面试问题总结&#xff1a;qt工程师/c工程师 C 语言相关问题答案 目录基础语法与特性内存管理预处理与编译 C 相关问题答案面向对象编程模板与泛型编程STL 标准模板库 Qt 相关问题答案Qt 基础与信号槽机制Qt 界面设计与布局管理Qt 多线程与并发编程 目录 基础…

实现实时数据推送:SpringBoot中SSE接口的两种方法

&#x1f31f; 前言 欢迎来到我的技术小宇宙&#xff01;&#x1f30c; 这里不仅是我记录技术点滴的后花园&#xff0c;也是我分享学习心得和项目经验的乐园。&#x1f4da; 无论你是技术小白还是资深大牛&#xff0c;这里总有一些内容能触动你的好奇心。&#x1f50d; &#x…

LXC 导入多Linux系统

前提要求 ubuntu下安装lxd 参考Rockylinux下安装lxd 参考LXC 源替换参考LXC 容器端口发布参考LXC webui 管理<

ES的文档更新机制

想获取更多高质量的Java技术文章&#xff1f;欢迎访问Java技术小馆官网&#xff0c;持续更新优质内容&#xff0c;助力技术成长 Java技术小馆官网https://www.yuque.com/jtostring ES的文档更新机制 在现代应用中&#xff0c;数据的动态性越来越强&#xff0c;我们不仅需要快…

trae.ai 编辑器:前端开发者的智能效率革命

一、为什么我们需要更智能的编辑器&#xff1f; 作为从业5年的前端开发者&#xff0c;我使用过从Sublime到VSCode的各种编辑器。但随着现代前端技术的复杂度爆炸式增长&#xff08;想想一个React组件可能涉及JSX、CSS-in-JS、TypeScript和GraphQL&#xff09;&#xff0c;传统…

MySQL篇(一):慢查询定位及索引、B树相关知识详解

MySQL篇&#xff08;一&#xff09;&#xff1a;慢查询定位及索引、B树相关知识详解 MySQL篇&#xff08;一&#xff09;&#xff1a;慢查询定位及索引、B树相关知识详解一、MySQL中慢查询的定位&#xff08;一&#xff09;慢查询日志的开启&#xff08;二&#xff09;慢查询日…

uniapp APP端在线升级(简版)

设计思路&#xff1a; 1.版本比较&#xff1a;应用程序检查其当前版本与远程服务器上可用的最新版本 2. 更新状态指示&#xff1a;如果应用程序是不是最新的版本&#xff0c;则页面提示下载最新版本。 3.下载启动&#xff1a;通过plus.downloader.createDownload()启动新应用…

基于javaweb的SpringBoot教务课程管理设计与实现(源码+文档+部署讲解)

技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文…

使用大语言模型进行Python图表可视化

Python使用matplotlib进行可视化一直有2个问题&#xff0c;一是代码繁琐&#xff0c;二是默认模板比较丑。因此发展出seaborn等在matplotlib上二次开发&#xff0c;以更少的代码进行画图的和美化的库&#xff0c;但是这也带来了定制化不足的问题。在大模型时代&#xff0c;这个…

【JavaEE】MyBatis - Plus

目录 一、快速使用二、CRUD简单使用三、常见注解3.1 TableName3.2 TableFiled3.3 TableId 四、条件构造器4.1 QueryWrapper4.2 UpdateWrapper4.3 LambdaQueryWrapper4.4 LambdaUpdateWrapper 五、自定义SQL 一、快速使用 MyBatis Plus官方文档&#xff1a;MyBatis Plus官方文档…

采用前端技术开源了一个数据结构算法的可视化工具

今天要推荐的开源项目叫VisuAlgoX,是一个面向计算机科学和游戏开发的 交互式算法可视化工具&#xff0c;帮助用户通过直观的动画理解各种数据结构和算法。 项目的前身 由于最近在做一些关于游戏和图形化方面的文章&#xff0c;因此做了一部分相关算法的动态可视化来做配图展示…