text:
<?xml version="1.0" encoding="utf-8" ?>
<FileTypeIcons xmlns="http://tempuri.org/FileTypeIcons.xsd" RootSrc="/aspnet_client/filebrowser/" DefaultFileIcon="default.gif"
	DefaultFolderIcon="folder.gif">
	<FileTypeIcon ExtensionName="323" IconFile="default.gif" FileType="H.323 Internet 电话技术"></FileTypeIcon>
	<FileTypeIcon ExtensionName="386" IconFile="default.gif" FileType="虚拟设备驱动程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ACA" IconFile="default.gif" FileType="Microsoft Agent Character File (HTTP format)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ACF" IconFile="default.gif" FileType="Microsoft Agent Character File (HTTP format)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ACG" IconFile="default.gif" FileType="Microsoft Agent 预览文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ACL" IconFile="default.gif" FileType="自动更正列表文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ACS" IconFile="default.gif" FileType="Microsoft Agent Character File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ACW" IconFile="default.gif" FileType="辅助功能向导设置"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ADE" IconFile="default.gif" FileType="Microsoft Access 项目扩展"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ADN" IconFile="default.gif" FileType="Microsoft Access 空白项目模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ADP" IconFile="default.gif" FileType="Microsoft Access 项目"></FileTypeIcon>
	<FileTypeIcon ExtensionName="AIF" IconFile="winmedia.gif" FileType="AIFF 格式声音"></FileTypeIcon>
	<FileTypeIcon ExtensionName="AIFC" IconFile="winmedia.gif" FileType="AIFF 格式声音"></FileTypeIcon>
	<FileTypeIcon ExtensionName="AIFF" IconFile="winmedia.gif" FileType="AIFF 格式声音"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ANI" IconFile="default.gif" FileType="动画光标"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ASA" IconFile="default.gif" FileType="活动服务器文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ASD" IconFile="default.gif" FileType="ASF Stream Description File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ASF" IconFile="winmedia.gif" FileType="Windows Media 音频/视频文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ASP" IconFile="asp.gif" FileType="活动服务器文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ASX" IconFile="winmedia.gif" FileType="Windows Media 音频/视频快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="AU" IconFile="winmedia.gif" FileType="AU 格式声音"></FileTypeIcon>
	<FileTypeIcon ExtensionName="AUDIOCD" IconFile="audiocd.gif" FileType="AudioCD"></FileTypeIcon>
	<FileTypeIcon ExtensionName="AVI" IconFile="winmedia.gif" FileType="视频剪辑"></FileTypeIcon>
	<FileTypeIcon ExtensionName="AW" IconFile="default.gif" FileType="应答向导文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="BKF" IconFile="default.gif" FileType="Windows 备份文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="BLG" IconFile="default.gif" FileType="性能监视器文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="BMP" IconFile="bmp.gif" FileType="BMP 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CAT" IconFile="default.gif" FileType="安全编录"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CDA" IconFile="winmedia.gif" FileType="CD 音频曲目"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CDF" IconFile="default.gif" FileType="频道文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CDX" IconFile="default.gif" FileType="活动服务器文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CER" IconFile="default.gif" FileType="安全证书"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CHK" IconFile="default.gif" FileType="还原了文件碎片"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CHM" IconFile="chm.gif" FileType="已编译的 HTML 帮助文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CLP" IconFile="default.gif" FileType="剪贴板剪贴"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CNF" IconFile="default.gif" FileType="快速拨号"></FileTypeIcon>
	<FileTypeIcon ExtensionName="COL" IconFile="default.gif" FileType="HTML 帮助文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CPL" IconFile="default.gif" FileType="控制面板扩展"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CRL" IconFile="default.gif" FileType="证书吊销列表"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CRT" IconFile="default.gif" FileType="安全证书"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CSS" IconFile="css.gif" FileType="级联样式表文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CSV" IconFile="default.gif" FileType="Microsoft Excel 逗号分隔值文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="CUR" IconFile="default.gif" FileType="光标"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DB" IconFile="default.gif" FileType="数据库文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DCS" IconFile="default.gif" FileType="数据库内容源"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DER" IconFile="default.gif" FileType="安全证书"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DESKLINK" IconFile="default.gif" FileType="DESKLINK 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DET" IconFile="default.gif" FileType="Office Data File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DIB" IconFile="bmp.gif" FileType="BMP 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DIC" IconFile="default.gif" FileType="文本文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DIF" IconFile="default.gif" FileType="Microsoft Excel 数据交换格式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DOC" IconFile="doc.gif" FileType="Microsoft Word 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DOCHTML" IconFile="default.gif" FileType="Microsoft Word HTML 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DOCMHTML" IconFile="default.gif" FileType="DOCMHTML 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DOT" IconFile="default.gif" FileType="Microsoft Word 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DOTHTML" IconFile="default.gif" FileType="Microsoft Word HTML 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DQY" IconFile="default.gif" FileType="Microsoft Excel ODBC 查询文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DRV" IconFile="default.gif" FileType="设备驱动程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DSN" IconFile="default.gif" FileType="数据源名称"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DUN" IconFile="default.gif" FileType="拨号网络文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="DVD" IconFile="audiocd.gif" FileType="DVD"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ECS" IconFile="default.gif" FileType="Exchange Server 内容源"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ELM" IconFile="default.gif" FileType="Microsoft Office 主题文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="EMF" IconFile="emf.gif" FileType="EMF 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="EML" IconFile="eml.gif" FileType="Outlook Express 邮件消息"></FileTypeIcon>
	<FileTypeIcon ExtensionName="EXC" IconFile="default.gif" FileType="文本文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FAD" IconFile="default.gif" FileType="Office 数据文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FAV" IconFile="default.gif" FileType="FAV 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FCS" IconFile="default.gif" FileType="文件共享内容源"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FFA" IconFile="default.gif" FileType="文件检索索引"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FFL" IconFile="default.gif" FileType="文件检索索引"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FFT" IconFile="default.gif" FileType="文件检索索引"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FFX" IconFile="default.gif" FileType="文件检索索引"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FON" IconFile="fon.gif" FileType="字体文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPDOCLIB" IconFile="default.gif" FileType="Microsoft FrontPage Document Library"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPHOMEOP" IconFile="default.gif" FileType="Microsoft FrontPage Home Page Open"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPHOMEPG" IconFile="default.gif" FileType="Microsoft FrontPage 主页"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPHTML" IconFile="default.gif" FileType="Microsoft FrontPage HTML 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPLIST" IconFile="default.gif" FileType="Microsoft FrontPage List"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPNOPUB" IconFile="default.gif" FileType="Microsoft FrontPage Dont Publish"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPOPEN" IconFile="default.gif" FileType="Microsoft FrontPage 打开文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPSURVEY" IconFile="default.gif" FileType="Microsoft FrontPage Survey"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FPWEB" IconFile="default.gif" FileType="FPWEB 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="FRG" IconFile="default.gif" FileType="FRG 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="GIF" IconFile="gif.gif" FileType="GIF 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="GRA" IconFile="default.gif" FileType="Microsoft Graph 图表"></FileTypeIcon>
	<FileTypeIcon ExtensionName="GRP" IconFile="default.gif" FileType="Microsoft 程序组"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HLP" IconFile="hlp.gif" FileType="帮助文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HOL" IconFile="default.gif" FileType="Microsoft Outlook Holidays"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HT" IconFile="default.gif" FileType="超级终端文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HTA" IconFile="default.gif" FileType="HTML Application"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HTC" IconFile="default.gif" FileType="HTC 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HTM" IconFile="html.gif" FileType="HTML 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HTML" IconFile="html.gif" FileType="HTML 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HTT" IconFile="htt.gif" FileType="HyperText 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="HTX" IconFile="default.gif" FileType="用于 Internet 数据库的 HTML 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ICC" IconFile="default.gif" FileType="ICC 配置文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ICM" IconFile="default.gif" FileType="ICC 配置文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ICO" IconFile="default.gif" FileType="图标"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ICS" IconFile="default.gif" FileType="iCalendar 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="IDC" IconFile="default.gif" FileType="IDC 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="III" IconFile="default.gif" FileType="Intel IPhone 兼容"></FileTypeIcon>
	<FileTypeIcon ExtensionName="INF" IconFile="default.gif" FileType="安装信息"></FileTypeIcon>
	<FileTypeIcon ExtensionName="INI" IconFile="default.gif" FileType="配置设置"></FileTypeIcon>
	<FileTypeIcon ExtensionName="INS" IconFile="default.gif" FileType="Internet 通讯设置"></FileTypeIcon>
	<FileTypeIcon ExtensionName="IQY" IconFile="default.gif" FileType="Microsoft Excel Web 查询文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ISP" IconFile="default.gif" FileType="Internet 通讯设置"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ITS" IconFile="default.gif" FileType="Internet Document Set"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ITSS" IconFile="default.gif" FileType="Microsoft Infotech Storage System File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="IVF" IconFile="default.gif" FileType="Indeo 视频文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="JFIF" IconFile="jpeg.gif" FileType="JPEG 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="JOB" IconFile="default.gif" FileType="任务对象"></FileTypeIcon>
	<FileTypeIcon ExtensionName="JOD" IconFile="default.gif" FileType="Microsoft.Jet.OLEDB.4.0"></FileTypeIcon>
	<FileTypeIcon ExtensionName="JPE" IconFile="jpeg.gif" FileType="JPEG 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="JPEG" IconFile="jpeg.gif" FileType="JPEG 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="JPG" IconFile="jpeg.gif" FileType="JPEG 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="JS" IconFile="js.gif" FileType="JScript Script File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="JSE" IconFile="js.gif" FileType="JScript Encoded Script File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="LDB" IconFile="default.gif" FileType="Microsoft Access 记录锁定信息"></FileTypeIcon>
	<FileTypeIcon ExtensionName="LEX" IconFile="default.gif" FileType="词典文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="LOG" IconFile="default.gif" FileType="文本文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="LWV" IconFile="default.gif" FileType="Microsoft Linguistically Enhanced Sound File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="M1V" IconFile="winmedia.gif" FileType="电影文件(MPEG)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="M3U" IconFile="winmedia.gif" FileType="M3U 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAD" IconFile="default.gif" FileType="Microsoft Access 模块快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAF" IconFile="default.gif" FileType="Microsoft Access 窗体快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAG" IconFile="default.gif" FileType="Microsoft Access 图表快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAM" IconFile="default.gif" FileType="Microsoft Access 宏快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAPIMAIL" IconFile="default.gif" FileType="MAPIMAIL 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAQ" IconFile="default.gif" FileType="Microsoft Access 查询快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAR" IconFile="default.gif" FileType="Microsoft Access 报表快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAS" IconFile="default.gif" FileType="Microsoft Access 存储过程快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAT" IconFile="default.gif" FileType="Microsoft Access 表快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAU" IconFile="default.gif" FileType="MAU 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAV" IconFile="default.gif" FileType="Microsoft Access 视图快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MAW" IconFile="default.gif" FileType="Microsoft Access 数据访问页快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MDA" IconFile="default.gif" FileType="Microsoft Access 加载项"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MDB" IconFile="mdb.gif" FileType="Microsoft Access 应用程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MDBHTML" IconFile="default.gif" FileType="Microsoft Access HTML 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MDE" IconFile="default.gif" FileType="Microsoft Access MDE 数据库"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MDN" IconFile="default.gif" FileType="Microsoft Access 空白数据库模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MDT" IconFile="default.gif" FileType="Microsoft Access 加载项数据"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MDW" IconFile="default.gif" FileType="Microsoft Access 工作组信息"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MDZ" IconFile="default.gif" FileType="Microsoft Access 数据库向导模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MGC" IconFile="default.gif" FileType="媒体目录文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MHT" IconFile="default.gif" FileType="MHTML Document"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MHTML" IconFile="default.gif" FileType="MHTML Document"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MID" IconFile="winmedia.gif" FileType="MIDI 序列"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MIDI" IconFile="winmedia.gif" FileType="MIDI 序列"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MML" IconFile="default.gif" FileType="媒体目录文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MMM" IconFile="mmm.gif" FileType="媒体剪辑"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MMW" IconFile="default.gif" FileType="媒体目录文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MP2" IconFile="winmedia.gif" FileType="电影文件(MPEG)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MP2V" IconFile="winmedia.gif" FileType="电影文件(MPEG)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MP3" IconFile="winmedia.gif" FileType="MP3 格式声音"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MPA" IconFile="winmedia.gif" FileType="电影文件(MPEG)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MPE" IconFile="winmedia.gif" FileType="电影文件(MPEG)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MPEG" IconFile="winmedia.gif" FileType="电影文件(MPEG)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MPF" IconFile="default.gif" FileType="Media Package 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MPG" IconFile="winmedia.gif" FileType="电影文件(MPEG)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MPV2" IconFile="winmedia.gif" FileType="电影文件(MPEG)"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MSC" IconFile="default.gif" FileType="Microsoft 通用管理文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MSG" IconFile="default.gif" FileType="Outlook 项目"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MSI" IconFile="msi.gif" FileType="Windows Installer 软件包"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MSP" IconFile="msi.gif" FileType="Windows Installer 修补程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MSRCINCIDENT" IconFile="default.gif" FileType="Microsoft 远程访问事件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MSSTYLES" IconFile="theme.gif" FileType="Windows 可视化风格文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="MSWMM" IconFile="mswmm.gif" FileType="Windows Movie Maker 项目"></FileTypeIcon>
	<FileTypeIcon ExtensionName="NCS" IconFile="default.gif" FileType="Lotus Notes 内容源"></FileTypeIcon>
	<FileTypeIcon ExtensionName="NFO" IconFile="default.gif" FileType="MSInfo 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="NICK" IconFile="default.gif" FileType="Office 数据文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="NK2" IconFile="default.gif" FileType="Office 数据文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="NMW" IconFile="default.gif" FileType="Microsoft NetMeeting T126 兼容白板文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="NWS" IconFile="default.gif" FileType="Outlook Express 新闻消息"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OBD" IconFile="default.gif" FileType="OBD 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OBT" IconFile="default.gif" FileType="OBT 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OBZ" IconFile="default.gif" FileType="OBZ 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OCX" IconFile="default.gif" FileType="ActiveX 控件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ODC" IconFile="default.gif" FileType="Microsoft Office 数据连接"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ODCCUBEFILE" IconFile="default.gif" FileType="ODCCUBEFILE 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ODCDATABASEFILE" IconFile="default.gif" FileType="ODCDATABASEFILE 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ODCNEWFILE" IconFile="default.gif" FileType="ODCNEWFILE 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ODCTABLEFILE" IconFile="default.gif" FileType="ODCTABLEFILE 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OFT" IconFile="default.gif" FileType="Outlook 项目模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OPC" IconFile="default.gif" FileType="Microsoft 清理向导文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OPS" IconFile="default.gif" FileType="Office 10 设置文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OQY" IconFile="default.gif" FileType="Microsoft Excel OLAP 查询文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OSS" IconFile="default.gif" FileType="Office 搜索"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OST" IconFile="default.gif" FileType="Office 数据文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="OTF" IconFile="default.gif" FileType="OpenType 字体文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="P10" IconFile="default.gif" FileType="证书申请"></FileTypeIcon>
	<FileTypeIcon ExtensionName="P12" IconFile="default.gif" FileType="Personal Information Exchange"></FileTypeIcon>
	<FileTypeIcon ExtensionName="P7B" IconFile="default.gif" FileType="PKCS #7 证书"></FileTypeIcon>
	<FileTypeIcon ExtensionName="P7C" IconFile="default.gif" FileType="数字标识文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="P7M" IconFile="default.gif" FileType="PKCS #7 MIME 消息"></FileTypeIcon>
	<FileTypeIcon ExtensionName="P7R" IconFile="default.gif" FileType="PKCS #7 证书"></FileTypeIcon>
	<FileTypeIcon ExtensionName="P7S" IconFile="default.gif" FileType="PKCS #7 签名"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PAB" IconFile="default.gif" FileType="Office 数据文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PBK" IconFile="default.gif" FileType="拨号电话簿"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PCB" IconFile="default.gif" FileType="PCB 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PCD" IconFile="default.gif" FileType="Photo CD 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PCX" IconFile="default.gif" FileType="PCX 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PFM" IconFile="default.gif" FileType="Type 1 字体文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PFX" IconFile="default.gif" FileType="Personal Information Exchange"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PIP" IconFile="default.gif" FileType="Microsoft Office 设置文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PKO" IconFile="default.gif" FileType="公钥安全对象"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PMA" IconFile="default.gif" FileType="性能监视器文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PMC" IconFile="default.gif" FileType="性能监视器文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PML" IconFile="default.gif" FileType="性能监视器文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PMR" IconFile="default.gif" FileType="性能监视器文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PMW" IconFile="default.gif" FileType="性能监视器文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PNG" IconFile="png.gif" FileType="PNG 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="POT" IconFile="default.gif" FileType="Microsoft PowerPoint 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="POTHTML" IconFile="default.gif" FileType="Microsoft PowerPoint HTML 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PPA" IconFile="default.gif" FileType="Microsoft PowerPoint 加载项"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PPS" IconFile="default.gif" FileType="Microsoft PowerPoint 幻灯片放映"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PPT" IconFile="ppt.gif" FileType="Microsoft PowerPoint 演示文稿"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PPTHTML" IconFile="default.gif" FileType="Microsoft PowerPoint HTML 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PPTMHTML" IconFile="default.gif" FileType="PPTMHTML 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PRF" IconFile="default.gif" FileType="msrating.dll,-3001"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PST" IconFile="default.gif" FileType="Office 数据文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PSW" IconFile="default.gif" FileType="Password Backup"></FileTypeIcon>
	<FileTypeIcon ExtensionName="PWZ" IconFile="default.gif" FileType="Microsoft PowerPoint 向导"></FileTypeIcon>
	<FileTypeIcon ExtensionName="QDS" IconFile="default.gif" FileType="目录查询"></FileTypeIcon>
	<FileTypeIcon ExtensionName="RAT" IconFile="default.gif" FileType="msrating.dll,-3000"></FileTypeIcon>
	<FileTypeIcon ExtensionName="RDP" IconFile="default.gif" FileType="远程桌面连接"></FileTypeIcon>
	<FileTypeIcon ExtensionName="REG" IconFile="reg.gif" FileType="注册表项"></FileTypeIcon>
	<FileTypeIcon ExtensionName="RMI" IconFile="winmedia.gif" FileType="MIDI 序列"></FileTypeIcon>
	<FileTypeIcon ExtensionName="RNK" IconFile="default.gif" FileType="拨号快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="RQY" IconFile="default.gif" FileType="Microsoft Excel OLE DB 查询文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="RTF" IconFile="default.gif" FileType="RTF 格式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="RWZ" IconFile="default.gif" FileType="Office 数据文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SC2" IconFile="default.gif" FileType="Microsoft Schedule+ 应用程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SCD" IconFile="default.gif" FileType="Microsoft Schedule+ 应用程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SCH" IconFile="default.gif" FileType="Microsoft Schedule+ 应用程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SCP" IconFile="default.gif" FileType="文本文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SCT" IconFile="default.gif" FileType="Windows Script Component"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SDB" IconFile="default.gif" FileType="Appfix 软件包"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SHB" IconFile="default.gif" FileType="将快捷方式插入到文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SHS" IconFile="default.gif" FileType="片段对象"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SHTM" IconFile="default.gif" FileType="HTML 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SHTML" IconFile="html.gif" FileType="HTML 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SLK" IconFile="default.gif" FileType="Microsoft Excel SLK 数据导入格式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SLL" IconFile="default.gif" FileType="SLL 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SND" IconFile="winmedia.gif" FileType="AU 格式声音"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SNP" IconFile="default.gif" FileType="Snapshot 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SPC" IconFile="default.gif" FileType="PKCS #7 证书"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SPL" IconFile="default.gif" FileType="Shockwave Flash Object"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SST" IconFile="default.gif" FileType="Microsoft 系列证书存储"></FileTypeIcon>
	<FileTypeIcon ExtensionName="STF" IconFile="default.gif" FileType="Microsoft 安装文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="STL" IconFile="default.gif" FileType="证书信任列表"></FileTypeIcon>
	<FileTypeIcon ExtensionName="STM" IconFile="default.gif" FileType="HTML 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SWF" IconFile="swf.gif" FileType="Shockwave Flash Object"></FileTypeIcon>
	<FileTypeIcon ExtensionName="SYS" IconFile="default.gif" FileType="系统文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="TCS" IconFile="default.gif" FileType="Tahoe Server 内容源"></FileTypeIcon>
	<FileTypeIcon ExtensionName="THEME" IconFile="theme.gif" FileType="Windows 主题文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="TIF" IconFile="tif.gif" FileType="TIF 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="TIFF" IconFile="tif.gif" FileType="TIF 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="TTC" IconFile="default.gif" FileType="TrueType Collection 字体文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="TTF" IconFile="default.gif" FileType="TrueType 字体文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="TXT" IconFile="txt.gif" FileType="文本文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="UDL" IconFile="default.gif" FileType="Microsoft 数据链接"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ULS" IconFile="default.gif" FileType="Internet 定位服务"></FileTypeIcon>
	<FileTypeIcon ExtensionName="URL" IconFile="default.gif" FileType="Internet 快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="VBE" IconFile="vbe.gif" FileType="VBScript Encoded Script File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="VBS" IconFile="vbe.gif" FileType="VBScript Script File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="VCF" IconFile="default.gif" FileType="vCard 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="VCS" IconFile="default.gif" FileType="vCalendar 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="VXD" IconFile="default.gif" FileType="虚拟设备驱动程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WAB" IconFile="default.gif" FileType="数字标识文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WAV" IconFile="winmedia.gif" FileType="波形声音"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WAX" IconFile="winmedia.gif" FileType="Windows Media 音频快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WBK" IconFile="default.gif" FileType="Microsoft Word 备份文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WCS" IconFile="default.gif" FileType="Web 站点内容源"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WEB" IconFile="default.gif" FileType="Office 数据文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WEBPNP" IconFile="default.gif" FileType="Webpnp"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WHT" IconFile="default.gif" FileType="Microsoft NetMeeting 旧白板文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WIZ" IconFile="default.gif" FileType="Microsoft Word 向导"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WIZHTML" IconFile="default.gif" FileType="Microsoft Access HTML 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WLL" IconFile="default.gif" FileType="WLL 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WM" IconFile="winmedia.gif" FileType="Windows Media 音频/视频文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WMA" IconFile="winmedia.gif" FileType="Windows Media 音频文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WMD" IconFile="winmedia.gif" FileType="Windows Media Player 下载软件包"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WMF" IconFile="wmf.gif" FileType="WMF 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WMP" IconFile="winmedia.gif" FileType="Windows Media Player 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WMS" IconFile="winmedia.gif" FileType="Windows Media Player 外观文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WMV" IconFile="winmedia.gif" FileType="Windows Media 音频/视频文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WMX" IconFile="winmedia.gif" FileType="Windows Media 音频/视频快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WMZ" IconFile="winmedia.gif" FileType="Windows Media Player 外观程序包"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WPS" IconFile="default.gif" FileType="WPS 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WRI" IconFile="default.gif" FileType="写入文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WSC" IconFile="default.gif" FileType="Windows Script Component"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WSF" IconFile="vbe.gif" FileType="Windows Script File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WSH" IconFile="wsh.gif" FileType="Windows Script Host Settings File"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WTX" IconFile="default.gif" FileType="文本文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="WVX" IconFile="winmedia.gif" FileType="Windows Media 音频/视频快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLA" IconFile="default.gif" FileType="Microsoft Excel 加载宏"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLB" IconFile="default.gif" FileType="Microsoft Excel 工作表"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLC" IconFile="default.gif" FileType="Microsoft Excel 图表"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLD" IconFile="default.gif" FileType="Microsoft Excel 5.0 对话框编辑表"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLK" IconFile="default.gif" FileType="Microsoft Excel 备份文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLL" IconFile="default.gif" FileType="Microsoft Excel XLL 加载宏"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLM" IconFile="default.gif" FileType="Microsoft Excel 4.0 宏"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLS" IconFile="xls.gif" FileType="Microsoft Excel 工作表"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLSHTML" IconFile="default.gif" FileType="Microsoft Excel HTML 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLSMHTML" IconFile="default.gif" FileType="XLSMHTML 文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLT" IconFile="default.gif" FileType="Microsoft Excel 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLTHTML" IconFile="default.gif" FileType="Microsoft Excel HTML 模板"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLV" IconFile="default.gif" FileType="Microsoft Excel VBA 模块"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XLW" IconFile="default.gif" FileType="Microsoft Excel 工作区"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XML" IconFile="xml.gif" FileType="XML 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XNK" IconFile="default.gif" FileType="Exchange 快捷方式"></FileTypeIcon>
	<FileTypeIcon ExtensionName="XSL" IconFile="xsl.gif" FileType="XSL 样式表"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ZAP" IconFile="default.gif" FileType="软件安装设置"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ZIP" IconFile="zip.gif" FileType="压缩(zipped)文件夹"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ace" IconFile="rar.gif" FileType="WinRAR 档案文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="arj" IconFile="rar.gif" FileType="WinRAR 档案文件"></FileTypeIcon>
	<FileTypeIcon ExtensionName="ascx" IconFile="ascx.gif" FileType="ASP.NET Custom Control"></FileTypeIcon>
	<FileTypeIcon ExtensionName="aspx" IconFile="aspx.gif" FileType="ASP.NET Server Page"></FileTypeIcon>
	<FileTypeIcon ExtensionName="cs" IconFile="cs.gif" FileType="C# Source file"></FileTypeIcon>
	<FileTypeIcon ExtensionName="exe" IconFile="exe.gif" FileType="应用程序"></FileTypeIcon>
	<FileTypeIcon ExtensionName="psd" IconFile="psd.gif" FileType="Adobe Photoshop 图像"></FileTypeIcon>
	<FileTypeIcon ExtensionName="pub" IconFile="pub.gif" FileType="Microsoft Office Publisher 文档"></FileTypeIcon>
	<FileTypeIcon ExtensionName="rar" IconFile="rar.gif" FileType="WinRAR 档案文件"></FileTypeIcon>
</FileTypeIcons>


text:
package auth

import (
	"net/http"
	"strings"
	"testing"

	"github.com/docker/distribution/registry/client/auth"
	"github.com/vmware/harbor/src/common/utils/test"
)

func TestNewAuthorizerStore(t *testing.T) {
	handler := test.Handler(&test.Response{
		StatusCode: http.StatusUnauthorized,
		Headers: map[string]string{
			"Www-Authenticate": "Bearer realm=\"https://auth.docker.io/token\",service=\"registry.docker.io\"",
		},
	})

	server := test.NewServer(&test.RequestHandlerMapping{
		Method:  "GET",
		Pattern: "/v2/",
		Handler: handler,
	})
	defer server.Close()

	_, err := NewAuthorizerStore(server.URL, false, nil)
	if err != nil {
		t.Fatalf("failed to create authorizer store: %v", err)
	}
}

type simpleAuthorizer struct {
}

func (s *simpleAuthorizer) Scheme() string {
	return "bearer"
}

func (s *simpleAuthorizer) Authorize(req *http.Request,
	params map[string]string) error {
	req.Header.Set("Authorization", "Bearer token")
	return nil
}

func TestModify(t *testing.T) {
	authorizer := &simpleAuthorizer{}
	challenge := auth.Challenge{
		Scheme: "bearer",
	}

	as := &AuthorizerStore{
		authorizers: []Authorizer{authorizer},
		challenges:  []auth.Challenge{challenge},
	}

	req, err := http.NewRequest("GET", "http://example.com", nil)
	if err != nil {
		t.Fatalf("failed to create request: %v", err)
	}

	if err = as.Modify(req); err != nil {
		t.Fatalf("failed to modify request: %v", err)
	}

	header := req.Header.Get("Authorization")
	if len(header) == 0 {
		t.Fatal("\"Authorization\" header not found")
	}

	if !strings.HasPrefix(header, "Bearer") {
		t.Fatal("\"Authorization\" header does not start with \"Bearer\"")
	}
}

redpajama_set_name: RedPajamaGithub


text:
def func():
    value = "not-none"

    if value is None:
        print("None")
    else:
        if value != "not-none":
            return False

        print("Not none value")
        return True

    return False


text:
package xml

import (
	"bufio"
	"bytes"
	"fmt"
	"io"
	"reflect"
	"strconv"
	"strings"
	"time"
)

const (
	// A generic XML header suitable for use with the output of Marshal.
	// This is not automatically added to any output of this package,
	// it is provided as a convenience.
	Header = `<?xml version="1.0" encoding="UTF-8"?>` + "\n"
)

// Marshal returns the XML encoding of v.
//
// Marshal handles an array or slice by marshalling each of the elements.
// Marshal handles a pointer by marshalling the value it points at or, if the
// pointer is nil, by writing nothing.  Marshal handles an interface value by
// marshalling the value it contains or, if the interface value is nil, by
// writing nothing.  Marshal handles all other data by writing one or more XML
// elements containing the data.
//
// The name for the XML elements is taken from, in order of preference:
//     - the tag on the XMLName field, if the data is a struct
//     - the value of the XMLName field of type xml.Name
//     - the tag of the struct field used to obtain the data
//     - the name of the struct field used to obtain the data
//     - the name of the marshalled type
//
// The XML element for a struct contains marshalled elements for each of the
// exported fields of the struct, with these exceptions:
//     - the XMLName field, described above, is omitted.
//     - a field with tag "-" is omitted.
//     - a field with tag "name,attr" becomes an attribute with
//       the given name in the XML element.
//     - a field with tag ",attr" becomes an attribute with the
//       field name in the in the XML element.
//     - a field with tag ",chardata" is written as character data,
//       not as an XML element.
//     - a field with tag ",innerxml" is written verbatim, not subject
//       to the usual marshalling procedure.
//     - a field with tag ",comment" is written as an XML comment, not
//       subject to the usual marshalling procedure. It must not contain
//       the "--" string within it.
//     - a field with a tag including the "omitempty" option is omitted
//       if the field value is empty. The empty values are false, 0, any
//       nil pointer or interface value, and any array, slice, map, or
//       string of length zero.
//     - a non-pointer anonymous struct field is handled as if the
//       fields of its value were part of the outer struct.
//
// If a field uses a tag "a>b>c", then the element c will be nested inside
// parent elements a and b.  Fields that appear next to each other that name
// the same parent will be enclosed in one XML element.
//
// See MarshalIndent for an example.
//
// Marshal will return an error if asked to marshal a channel, function, or map.
func Marshal(v interface{}) ([]byte, error) {
	var b bytes.Buffer
	if err := NewEncoder(&b).Encode(v); err != nil {
		return nil, err
	}
	return b.Bytes(), nil
}

// MarshalIndent works like Marshal, but each XML element begins on a new
// indented line that starts with prefix and is followed by one or more
// copies of indent according to the nesting depth.
func MarshalIndent(v interface{}, prefix, indent string) ([]byte, error) {
	var b bytes.Buffer
	enc := NewEncoder(&b)
	enc.prefix = prefix
	enc.indent = indent
	err := enc.marshalValue(reflect.ValueOf(v), nil)
	enc.Flush()
	if err != nil {
		return nil, err
	}
	return b.Bytes(), nil
}

// An Encoder writes XML data to an output stream.
type Encoder struct {
	printer
}

// NewEncoder returns a new encoder that writes to w.
func NewEncoder(w io.Writer) *Encoder {
	return &Encoder{printer{Writer: bufio.NewWriter(w)}}
}

// Encode writes the XML encoding of v to the stream.
//
// See the documentation for Marshal for details about the conversion
// of Go values to XML.
func (enc *Encoder) Encode(v interface{}) error {
	err := enc.marshalValue(reflect.ValueOf(v), nil)
	enc.Flush()
	return err
}

type printer struct {
	*bufio.Writer
	indent     string
	prefix     string
	depth      int
	indentedIn bool
}

// marshalValue writes one or more XML elements representing val.
// If val was obtained from a struct field, finfo must have its details.
func (p *printer) marshalValue(val reflect.Value, finfo *fieldInfo) error {
	if !val.IsValid() {
		return nil
	}
	if finfo != nil && finfo.flags&fOmitEmpty != 0 && isEmptyValue(val) {
		return nil
	}

	kind := val.Kind()
	typ := val.Type()

	// Drill into pointers/interfaces
	if kind == reflect.Ptr || kind == reflect.Interface {
		if val.IsNil() {
			return nil
		}
		return p.marshalValue(val.Elem(), finfo)
	}

	// Slices and arrays iterate over the elements. They do not have an enclosing tag.
	if (kind == reflect.Slice || kind == reflect.Array) && typ.Elem().Kind() != reflect.Uint8 {
		for i, n := 0, val.Len(); i < n; i++ {
			if err := p.marshalValue(val.Index(i), finfo); err != nil {
				return err
			}
		}
		return nil
	}

	tinfo, err := getTypeInfo(typ)
	if err != nil {
		return err
	}

	// Precedence for the XML element name is:
	// 1. XMLName field in underlying struct;
	// 2. field name/tag in the struct field; and
	// 3. type name
	var xmlns, name string
	if tinfo.xmlname != nil {
		xmlname := tinfo.xmlname
		if xmlname.name != "" {
			xmlns, name = xmlname.xmlns, xmlname.name
		} else if v, ok := val.FieldByIndex(xmlname.idx).Interface().(Name); ok && v.Local != "" {
			xmlns, name = v.Space, v.Local
		}
	}
	if name == "" && finfo != nil {
		xmlns, name = finfo.xmlns, finfo.name
	}
	if name == "" {
		name = typ.Name()
		if name == "" {
			return &UnsupportedTypeError{typ}
		}
	}

	p.writeIndent(1)
	p.WriteByte('<')
	p.WriteString(name)

	if xmlns != "" {
		p.WriteString(` xmlns="`)
		// TODO: EscapeString, to avoid the allocation.
		Escape(p, []byte(xmlns))
		p.WriteByte('"')
	}

	// Attributes
	for i := range tinfo.fields {
		finfo := &tinfo.fields[i]
		if finfo.flags&fAttr == 0 {
			continue
		}
		fv := val.FieldByIndex(finfo.idx)
		if finfo.flags&fOmitEmpty != 0 && isEmptyValue(fv) {
			continue
		}
		p.WriteByte(' ')
		p.WriteString(finfo.name)
		p.WriteString(`="`)
		if err := p.marshalSimple(fv.Type(), fv); err != nil {
			return err
		}
		p.WriteByte('"')
	}
	p.WriteByte('>')

	if val.Kind() == reflect.Struct {
		err = p.marshalStruct(tinfo, val)
	} else {
		err = p.marshalSimple(typ, val)
	}
	if err != nil {
		return err
	}

	p.writeIndent(-1)
	p.WriteByte('<')
	p.WriteByte('/')
	p.WriteString(name)
	p.WriteByte('>')

	return nil
}

var timeType = reflect.TypeOf(time.Time{})

func (p *printer) marshalSimple(typ reflect.Type, val reflect.Value) error {
	// Normally we don't see structs, but this can happen for an attribute.
	if val.Type() == timeType {
		p.WriteString(val.Interface().(time.Time).Format(time.RFC3339Nano))
		return nil
	}
	switch val.Kind() {
	case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
		p.WriteString(strconv.FormatInt(val.Int(), 10))
	case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
		p.WriteString(strconv.FormatUint(val.Uint(), 10))
	case reflect.Float32, reflect.Float64:
		p.WriteString(strconv.FormatFloat(val.Float(), 'g', -1, 64))
	case reflect.String:
		// TODO: Add EscapeString.
		Escape(p, []byte(val.String()))
	case reflect.Bool:
		p.WriteString(strconv.FormatBool(val.Bool()))
	case reflect.Array:
		// will be [...]byte
		bytes := make([]byte, val.Len())
		for i := range bytes {
			bytes[i] = val.Index(i).Interface().(byte)
		}
		Escape(p, bytes)
	case reflect.Slice:
		// will be []byte
		Escape(p, val.Bytes())
	default:
		return &UnsupportedTypeError{typ}
	}
	return nil
}

var ddBytes = []byte("--")

func (p *printer) marshalStruct(tinfo *typeInfo, val reflect.Value) error {
	if val.Type() == timeType {
		p.WriteString(val.Interface().(time.Time).Format(time.RFC3339Nano))
		return nil
	}
	s := parentStack{printer: p}
	for i := range tinfo.fields {
		finfo := &tinfo.fields[i]
		if finfo.flags&(fAttr|fAny) != 0 {
			continue
		}
		vf := val.FieldByIndex(finfo.idx)
		switch finfo.flags & fMode {
		case fCharData:
			switch vf.Kind() {
			case reflect.String:
				Escape(p, []byte(vf.String()))
			case reflect.Slice:
				if elem, ok := vf.Interface().([]byte); ok {
					Escape(p, elem)
				}
			}
			continue

		case fComment:
			k := vf.Kind()
			if !(k == reflect.String || k == reflect.Slice && vf.Type().Elem().Kind() == reflect.Uint8) {
				return fmt.Errorf("xml: bad type for comment field of %s", val.Type())
			}
			if vf.Len() == 0 {
				continue
			}
			p.writeIndent(0)
			p.WriteString("<!--")
			dashDash := false
			dashLast := false
			switch k {
			case reflect.String:
				s := vf.String()
				dashDash = strings.Index(s, "--") >= 0
				dashLast = s[len(s)-1] == '-'
				if !dashDash {
					p.WriteString(s)
				}
			case reflect.Slice:
				b := vf.Bytes()
				dashDash = bytes.Index(b, ddBytes) >= 0
				dashLast = b[len(b)-1] == '-'
				if !dashDash {
					p.Write(b)
				}
			default:
				panic("can't happen")
			}
			if dashDash {
				return fmt.Errorf(`xml: comments must not contain "--"`)
			}
			if dashLast {
				// "--->" is invalid grammar. Make it "- -->"
				p.WriteByte(' ')
			}
			p.WriteString("-->")
			continue

		case fInnerXml:
			iface := vf.Interface()
			switch raw := iface.(type) {
			case []byte:
				p.Write(raw)
				continue
			case string:
				p.WriteString(raw)
				continue
			}

		case fElement:
			s.trim(finfo.parents)
			if len(finfo.parents) > len(s.stack) {
				if vf.Kind() != reflect.Ptr && vf.Kind() != reflect.Interface || !vf.IsNil() {
					s.push(finfo.parents[len(s.stack):])
				}
			}
		}
		if err := p.marshalValue(vf, finfo); err != nil {
			return err
		}
	}
	s.trim(nil)
	return nil
}

func (p *printer) writeIndent(depthDelta int) {
	if len(p.prefix) == 0 && len(p.indent) == 0 {
		return
	}
	if depthDelta < 0 {
		p.depth--
		if p.indentedIn {
			p.indentedIn = false
			return
		}
		p.indentedIn = false
	}
	p.WriteByte('\n')
	if len(p.prefix) > 0 {
		p.WriteString(p.prefix)
	}
	if len(p.indent) > 0 {
		for i := 0; i < p.depth; i++ {
			p.WriteString(p.indent)
		}
	}
	if depthDelta > 0 {
		p.depth++
		p.indentedIn = true
	}
}

type parentStack struct {
	*printer
	stack []string
}

// trim updates the XML context to match the longest common prefix of the stack
// and the given parents.  A closing tag will be written for every parent
// popped.  Passing a zero slice or nil will close all the elements.
func (s *parentStack) trim(parents []string) {
	split := 0
	for ; split < len(parents) && split < len(s.stack); split++ {
		if parents[split] != s.stack[split] {
			break
		}
	}
	for i := len(s.stack) - 1; i >= split; i-- {
		s.writeIndent(-1)
		s.WriteString("</")
		s.WriteString(s.stack[i])
		s.WriteByte('>')
	}
	s.stack = parents[:split]
}

// push adds parent elements to the stack and writes open tags.
func (s *parentStack) push(parents []string) {
	for i := 0; i < len(parents); i++ {
		s.writeIndent(1)
		s.WriteByte('<')
		s.WriteString(parents[i])
		s.WriteByte('>')
	}
	s.stack = append(s.stack, parents...)
}

// A MarshalXMLError is returned when Marshal encounters a type
// that cannot be converted into XML.
type UnsupportedTypeError struct {
	Type reflect.Type
}

func (e *UnsupportedTypeError) Error() string {
	return "xml: unsupported type: " + e.Type.String()
}

func isEmptyValue(v reflect.Value) bool {
	switch v.Kind() {
	case reflect.Array, reflect.Map, reflect.Slice, reflect.String:
		return v.Len() == 0
	case reflect.Bool:
		return !v.Bool()
	case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
		return v.Int() == 0
	case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
		return v.Uint() == 0
	case reflect.Float32, reflect.Float64:
		return v.Float() == 0
	case reflect.Interface, reflect.Ptr:
		return v.IsNil()
	}
	return false
}


text:
id: 2589
title: 'Rifugio Riella 1275 m – Palanzone (CO)'
author: Stefano Marzorati
layout: post
guid: http://marzorati.co/?p=2589
permalink: /rifugio-riella-1275-m-palanzone-co/
authorsure_include_css:
  -
dsq_thread_id:
  - 2052230610
categories:
  - Varie
tags:
  - como
  - montagna
  - palanzone
  - riella
  - rifugio
---
Partenza: Rescaldina
Arrivo: Colma di Sormano o meglio Pian del Tivano
Tempo 1h 20m

Arrivati alla Colma ci accorgiamo che tutti i parcheggi sono a pagamento.
L'intera giornata costa 6 euro.
C'è il problema che le macchinette per il biglietto accettano solo monete.
Non avendo monete chiediamo al bar di cambiarci i soldi, ma dicono anche loro di non averne.
Ci consigliano di parcheggiare sulla strada all'interno delle striscie bianche, ma essendoci un po' di neve ai bordi, con il rischio di lasciare l'auto fuori dalle striscie, scendiamo al Pian del Tivano con l'auto, dove il parcheggio è gratis.
Dal parcheggio risaliamo alla Colma a piedi (15 minuti) e da qua saliamo per il rifugio.
Tempo per arrivare al rifugio: 1h 30m.
Mangiamo al rifugio, due polente uncie (molto buona), due stinchi (molto buoni), una birra moretti da 66cl e due caffè. Totale 43 euro.

[<img src="http://res.cloudinary.com/marzorati-co/image/upload/v1408107878/rifugio_riella_palanzone_gj6lvx.jpg" alt="Rifugio Riella - Palanzone" class="aligncenter size-full wp-image-2590" />][1]

 [1]: http://res.cloudinary.com/marzorati-co/image/upload/v1408107878/rifugio_riella_palanzone_gj6lvx.jpg


text:
body    {
    font-family: 'Roboto', sans-serif;
}

.jumbotron .h1, .jumbotron h1 {
    text-align: center;
    font-weight:normal;
    color:#FFFFFF;
    letter-spacing:-1pt;
    word-spacing:2pt;
    font-size:45px;
    font-family:arial black, sans-serif;
    line-height:1;

}

.jumbotron p {
    text-align: left;
    font-weight:normal;
    color: white;
    letter-spacing:-1pt;
    word-spacing:2pt;
    font-size:25px;
    font-family:arial, sans-serif;
    line-height:1;
}

.navbar-inverse {
    background-color: red;
    border-color: #080808;
}

.jumbotron {
	background-image: url(forrestgumpbench2.jpg);
}

img {
    margin-left: auto;
    margin-right: auto;
}

.img-thumbnail {
    position: absolute;
    clip: rect(0px,306px,200px,0px);
}

h3 {
	text-align: center;
    font-weight:normal;
    color: white;
    letter-spacing:-1pt;
    word-spacing:2pt;
    font-size:15px;
    font-family:arial black, sans-serif;
    line-height:1;
}


text:
<?php
/**
 * A controller.
 * Do here whatever you want before the page gets rendered
 */

/* @var $_DATA array */
global $_DATA;

$_DATA['something'] = "Hi!";


text:
namespace omaha {

static const TCHAR kRSTestKey[] =
    _T("HKCU\\Software\\Google\\Common_Installer__TEST_STORE");
static const TCHAR kRSTestName[] = _T("TestValueName");
static const byte kRSTestValue[] = {0x01, 0x02, 0x03, 0x04, 0x05};
static const int kRSTestValueSize = arraysize(kRSTestValue);

TEST(RegistryStoreTest, RegistryStore) {
  RegistryStore registry_store;
  uint32 value_count = 42; // We want to make sure it's overwritten with 0.
  CString value_name;
  std::vector<byte> data;

  // Set up and get in a known state.
  EXPECT_TRUE(registry_store.Open(kRSTestKey));
  EXPECT_TRUE(registry_store.Clear());

  // Add and test a single value
  EXPECT_FALSE(registry_store.Exists(kRSTestName));
  EXPECT_FALSE(registry_store.Read(kRSTestName, &data));
  data.clear();

  EXPECT_TRUE(registry_store.Write(kRSTestName,
                                   const_cast<byte*>(kRSTestValue),
                                   kRSTestValueSize));

  EXPECT_TRUE(registry_store.Exists(kRSTestName));
  EXPECT_TRUE(registry_store.Read(kRSTestName, &data));
  EXPECT_EQ(data.size(), kRSTestValueSize);
  for (int i = 0; i < kRSTestValueSize; i++)
    EXPECT_EQ(data[i], kRSTestValue[i]);

  // Remove and re-add value
  EXPECT_TRUE(registry_store.Remove(kRSTestName));
  EXPECT_FALSE(registry_store.Exists(kRSTestName));
  EXPECT_TRUE(registry_store.GetValueCount(&value_count));
  EXPECT_EQ(value_count, 0);
  EXPECT_TRUE(registry_store.Write(kRSTestName,
                                   const_cast<byte*>(kRSTestValue),
                                   kRSTestValueSize));
  EXPECT_TRUE(registry_store.GetValueCount(&value_count));
  EXPECT_EQ(value_count, 1);
  EXPECT_TRUE(registry_store.GetValueNameAt(0, &value_name));
  EXPECT_TRUE(value_name == kRSTestName);

  // Clean up and finish.
  EXPECT_TRUE(registry_store.Clear());
  EXPECT_FALSE(registry_store.Exists(kRSTestName));
  EXPECT_FALSE(registry_store.GetValueCount(&value_count));
  EXPECT_TRUE(registry_store.Close());
}

}  // namespace omaha


text:
<?php

namespace Geocoder\HttpAdapter;

use Geocoder\Exception\HttpException;
use Geocoder\Exception\ExtensionNotLoadedException;

/**
 * @author Markus Bachmann <markus.bachmann@bachi.biz>
 */
class SocketHttpAdapter implements HttpAdapterInterface
{
    const MAX_REDIRECTS = 5;

    private $redirectsRemaining = self::MAX_REDIRECTS;

    /**
     * {@inheritDoc}
     */
    public function getContent($url)
    {
        $info = parse_url($url);

        $hostname = $info['host'];
        $port     = isset($info['port']) ? $info['port'] : 80;
        $path     = isset($info['path']) ? $info['path'] : '/';

        $socketHandle = $this->createSocket($hostname, $port, 30);

        if (!fwrite($socketHandle, $this->buildHttpRequest($path, $hostname))) {
            throw new ExtensionNotLoadedException('Could not send the request');
        }

        $httpResponse = $this->getParsedHttpResponse($socketHandle);

        if ($httpResponse['headers']['status'] === 301 && isset($httpResponse['headers']['location'])) {
            if (--$this->redirectsRemaining) {
                return $this->getContent($httpResponse['headers']['location']);
            } else {
                throw new HttpException('Too Many Redirects');
            }
        } else {
            $this->redirectsRemaining = self::MAX_REDIRECTS;
        }

        if ($httpResponse['headers']['status'] !== 200) {
            throw new HttpException(sprintf('The server return a %s status.', $httpResponse['headers']['status']));
        }

        return $httpResponse['content'];
    }

    /**
     * This method strictly doesn't need to exist but can act as a "seam" for substituting fake sockets in test.
     * This would require a subclass that overloads the method and returns the fake socket.
     *
     * @param string  $hostname The hostname.
     * @param string  $port     The port number.
     * @param integer $timeout  The timeout.
     *
     * @return resource
     * @throws HttpException
     */
    protected function createSocket($hostname, $port, $timeout)
    {
        $socketHandle = fsockopen($hostname, $port, $errno, $errstr, $timeout) ?: null;

        //verify handle
        if (null === $socketHandle) {
            throw new HttpException(sprintf('Could not connect to socket. (%s)', $errstr));
        }

        return $socketHandle;
    }

    /**
     * @param string $path     The path.
     * @param string $hostname The hostname.
     *
     * @return string
     */
    protected function buildHttpRequest($path, $hostname)
    {
        $r = array();
        $r[] = "GET {$path} HTTP/1.1";
        $r[] = "Host: {$hostname}";
        $r[] = "Connection: Close";
        $r[] = "User-Agent: Geocoder PHP-Library";
        $r[] = "\r\n";

        return implode("\r\n", $r);
    }

    /**
     * Given a resource parse the contents into its component parts (headers/contents)
     *
     * @param resource $socketHandle
     *
     * @return array
     */
    protected function getParsedHttpResponse($socketHandle)
    {
        $httpResponse = array();
        $httpResponse['headers'] = array();
        $httpResponse['content'] = '';

        $reachedEndOfHeaders = false;

        while (!feof($socketHandle)) {
            $line = trim(fgets($socketHandle));
            if (!$line) {
                $reachedEndOfHeaders = true;
                continue;
            }
            if (!$reachedEndOfHeaders) {
                if (preg_match('@^HTTP/\d\.\d\s*(\d+)\s*.*$@', $line, $matches)) {
                    $httpResponse['headers']['status'] = (integer) $matches[1];
                } elseif (preg_match('@^([^:]+): (.+)$@', $line, $matches)) {
                    $httpResponse['headers'][strtolower($matches[1])] = trim($matches[2]);
                }
            } else {
                $httpResponse['content'] .= $line;
            }
        }

        return $httpResponse;
    }

    /**
     * {@inheritDoc}
     */
    public function getName()
    {
        return 'socket';
    }
}


text:
@implementation AFTPushAnimatedTransitioning

- (instancetype)initWithPresentedViewController:(UIViewController *)viewController {
    self = [super init];
    if (self) {
        viewController.modalPresentationStyle = UIModalPresentationCustom;
        viewController.transitioningDelegate = self;
    }
    return self;
}

#pragma mark - UIViewControllerTransitioningDelegate

- (nullable id <UIViewControllerAnimatedTransitioning>)animationControllerForPresentedController:(UIViewController *)presented presentingController:(UIViewController *)presenting sourceController:(UIViewController *)source {
    self.dismissing = NO;
    return self;
}

- (nullable id <UIViewControllerAnimatedTransitioning>)animationControllerForDismissedController:(UIViewController *)dismissed {
    self.dismissing = YES;
    return self;
}

#pragma mark - UIViewControllerAnimatedTransitioning

- (NSTimeInterval)transitionDuration:(nullable id <UIViewControllerContextTransitioning>)transitionContext {
    return 0.5;
}

- (void)animateTransition:(id <UIViewControllerContextTransitioning>)transitionContext {
    NSTimeInterval duration = [self transitionDuration:transitionContext];
    CGFloat damping = 1.0;
    CGFloat velocity = 1.0;

    UIViewController *fromVC = [transitionContext viewControllerForKey:UITransitionContextFromViewControllerKey];
    UIViewController *toVC = [transitionContext viewControllerForKey:UITransitionContextToViewControllerKey];

    if (!self.isDismissing) {

        CGRect initialCoveredFrame = [transitionContext initialFrameForViewController:fromVC];
        CGRect finalCoveredFrame = CGRectOffset(initialCoveredFrame, -initialCoveredFrame.size.width / 4, 0);

        CGRect finalPresentedFrame = [transitionContext finalFrameForViewController:toVC];
        toVC.view.frame = CGRectOffset(finalPresentedFrame, finalPresentedFrame.size.width, 0);

        UIView *containerView = [transitionContext containerView];
        [containerView addSubview:toVC.view];

        [UIView animateWithDuration:duration
                              delay:0.0
             usingSpringWithDamping:damping
              initialSpringVelocity:velocity
                            options:UIViewAnimationOptionCurveLinear
                         animations:^{
                             fromVC.view.frame = finalCoveredFrame;
                             toVC.view.frame = finalPresentedFrame;
                         } completion:^(BOOL finished) {
                             [transitionContext completeTransition:YES];
                         }];

    } else {

        CGRect initialDismissedFrame = [transitionContext initialFrameForViewController:fromVC];
        CGRect finalDismissedFrame = CGRectOffset(initialDismissedFrame, initialDismissedFrame.size.width, 0);
        CGRect finalCoveredFrame = initialDismissedFrame;

        [UIView animateWithDuration:duration
                              delay:0.0
             usingSpringWithDamping:damping
              initialSpringVelocity:velocity
                            options:UIViewAnimationOptionCurveLinear
                         animations:^{
                             fromVC.view.frame = finalDismissedFrame;
                             toVC.view.frame = finalCoveredFrame;
                         } completion:^(BOOL finished) {
                             [transitionContext completeTransition:YES];
                         }];

    }
}

@end


text:
module RotinasHelper
end


text:
//====================================================================================================
// Base code generated with LeatherGoods - ASF.Services.Http
// Architecture Solutions Foundation
//
// Generated by academic at LeatherGoods V 1.0
//====================================================================================================

using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using ASF.Business;
using ASF.Entities;
using ASF.Services.Contracts;
using ASF.Services.Contracts.Responses;

namespace ASF.Services.Http
{

    /// <summary>
    /// Cart HTTP service controller.
    /// </summary>
    [RoutePrefix("rest/Cart")]

    public class CartService : ApiController
    {

        [HttpPost]
        [Route("Add")]
        public Cart Add(Cart cart)
        {
            try
            {
                var bc = new CartBusiness();
                return bc.Add(cart);
            }
            catch (Exception ex)
            {
                var httpError = new HttpResponseMessage()
                {
                    StatusCode = (HttpStatusCode)422,
                    ReasonPhrase = ex.Message
                };

                throw new HttpResponseException(httpError);
            }
        }

        [HttpGet]
        [Route("All")]
        public AllCartResponse All()
        {
            try
            {
                var response = new AllCartResponse();
                var bc = new CartBusiness();
                response.Result = bc.All();
                return response;
            }
            catch (Exception ex)
            {
                var httpError = new HttpResponseMessage()
                {
                    StatusCode = (HttpStatusCode)422,
                    ReasonPhrase = ex.Message
                };

                throw new HttpResponseException(httpError);
            }
        }

        [HttpPost]
        [Route("Edit")]
        public void Edit(Cart cart)
        {
            try
            {
                var bc = new CartBusiness();
                cart.ChangedOn = System.DateTime.Now;
                bc.Edit(cart);
            }
            catch (Exception ex)
            {
                var httpError = new HttpResponseMessage()
                {
                    StatusCode = (HttpStatusCode)422,
                    ReasonPhrase = ex.Message
                };

                throw new HttpResponseException(httpError);
            }
        }

        [HttpGet]
        [Route("Find")]
        public FindCartResponse Find(int id)
        {
            try
            {
                var response = new FindCartResponse();
                var bc = new CartBusiness();
                response.Result = bc.Find(id);
                return response;
            }
            catch (Exception ex)
            {
                var httpError = new HttpResponseMessage()
                {
                    StatusCode = (HttpStatusCode)422,
                    ReasonPhrase = ex.Message
                };

                throw new HttpResponseException(httpError);
            }
        }

        [HttpGet]
        [Route("Remove")]
        public void Remove(int id)
        {
            try
            {
                var bc = new CartBusiness();
                bc.Remove(id);
            }
            catch (Exception ex)
            {
                var httpError = new HttpResponseMessage()
                {
                    StatusCode = (HttpStatusCode)422,
                    ReasonPhrase = ex.Message
                };

                throw new HttpResponseException(httpError);
            }
        }

        [HttpGet]
        [Route("FindByCookie")]
        public FindCartResponse FindByCookie()
        {
            try
            {
                var cookie = Request.Headers.GetCookies("cart")[0];
                var response = new FindCartResponse();
                var bc = new CartBusiness();
                response.Result = bc.FindByCookie(cookie["cart"].Value);
                return response;
            }
            catch (Exception ex)
            {
                var httpError = new HttpResponseMessage()
                {
                    StatusCode = (HttpStatusCode)422,
                    ReasonPhrase = ex.Message
                };

                throw new HttpResponseException(httpError);
            }
        }

    }
}


text:
<configuration>

    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>logs/application.log</file>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger{5}.%M\(%line\) - %msg%n</pattern>
        </encoder>
    </appender>

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger{5}.%M\(%line\) - %msg%n</pattern>
        </encoder>
    </appender>

    <root level="DEBUG">
        <appender-ref ref="FILE" />
        <appender-ref ref="STDOUT" />
    </root>

    <logger name="org.bitcoins.core" level="WARN"/>

</configuration>


text:
import sympy as sp
from sympy.physics.mechanics import dynamicsymbols
from sympy.physics.mechanics.functions import find_dynamicsymbols
from simupy.utils.symbolic import (lambdify_with_vector_args, grad,
    DEFAULT_LAMBDIFY_MODULES)
from simupy.array import Array, empty_array

from simupy.systems import DynamicalSystem as DynamicalSystemBase

DEFAULT_CODE_GENERATOR = lambdify_with_vector_args
DEFAULT_CODE_GENERATOR_ARGS = {
    'modules': DEFAULT_LAMBDIFY_MODULES
}

class DynamicalSystem(DynamicalSystemBase):
    def __init__(self, state_equation=None, state=None, input_=None,
                 output_equation=None, constants_values={}, dt=0,
                 initial_condition=None, code_generator=None,
                 code_generator_args={}):
        """
        DynamicalSystem constructor, used to create systems from symbolic
        expressions.

        Parameters
        ----------
        state_equation : array_like of sympy Expressions, optional
            Vector valued expression for the derivative of the state.
        state : array_like of sympy symbols, optional
            Vector of symbols representing the components of the state, in the
            desired order, matching state_equation.
        input_ : array_like of sympy symbols, optional
            Vector of symbols representing the components of the input, in the
            desired order. state_equation may depend on the system input. If
            the system has no state, the output_equation may depend on the
            system input.
        output_equation : array_like of sympy Expressions
            Vector valued expression for the output of the system.
        constants_values : dict
            Dictionary of constants substitutions.
        dt : float
            Sampling rate of system. Use 0 for continuous time systems.
        initial_condition : array_like of numerical values, optional
            Array or Matrix used as the initial condition of the system.
            Defaults to zeros of the same dimension as the state.
        code_generator : callable, optional
            Function to be used as code generator.
        code_generator_args : dict, optional
            Dictionary of keyword args to pass to the code generator.

        By default, the code generator uses a wrapper for ``sympy.lambdify``.
        You can change it by passing the system initialization arguments
        ``code_generator`` (the function) and additional keyword arguments to
        the generator in a dictionary ``code_generator_args``. You can change
        the defaults for future systems by changing the module values. See the
        readme or docs for an example.

        """
        self.constants_values = constants_values
        self.state = state
        self.input = input_

        self.code_generator = code_generator or DEFAULT_CODE_GENERATOR

        code_gen_args_to_set = DEFAULT_CODE_GENERATOR_ARGS.copy()
        code_gen_args_to_set.update(code_generator_args)
        self.code_generator_args = code_gen_args_to_set

        self.state_equation = state_equation
        self.output_equation = output_equation

        self.initial_condition = initial_condition
        self.dt = dt

        self.validate()

    @property
    def state(self):
        return self._state

    @state.setter
    def state(self, state):
        if state is None:  # or other checks?
            state = empty_array()
        if isinstance(state, sp.Expr):
            state = Array([state])
        self.dim_state = len(state)
        self._state = state

    @property
    def input(self):
        return self._inputs

    @input.setter
    def input(self, input_):
        if input_ is None:  # or other checks?
            input_ = empty_array()
        if isinstance(input_, sp.Expr):  # check it's a single dynamicsymbol?
            input_ = Array([input_])
        self.dim_input = len(input_)
        self._inputs = input_

    @property
    def state_equation(self):
        return self._state_equation

    @state_equation.setter
    def state_equation(self, state_equation):
        if state_equation is None:  # or other checks?
            state_equation = empty_array()
        else:
            assert len(state_equation) == len(self.state)
            assert find_dynamicsymbols(state_equation) <= (
                    set(self.state) | set(self.input)
                )
            assert state_equation.atoms(sp.Symbol) <= (
                    set(self.constants_values.keys())
                    | set([dynamicsymbols._t])
                )

        self._state_equation = state_equation
        self.update_state_equation_function()

        self.state_jacobian_equation = grad(self.state_equation, self.state)
        self.update_state_jacobian_function()

        self.input_jacobian_equation = grad(self.state_equation, self.input)
        self.update_input_jacobian_function()

    @property
    def output_equation(self):
        return self._output_equation

    @output_equation.setter
    def output_equation(self, output_equation):
        if isinstance(output_equation, sp.Expr):
            output_equation = Array([output_equation])
        if output_equation is None and self.dim_state == 0:
            output_equation = empty_array()
        else:
            if output_equation is None:
                output_equation = self.state

            assert output_equation.atoms(sp.Symbol) <= (
                    set(self.constants_values.keys())
                    | set([dynamicsymbols._t])
                   )

            if self.dim_state:
                assert find_dynamicsymbols(output_equation) <= set(self.state)
            else:
                assert find_dynamicsymbols(output_equation) <= set(self.input)

        self.dim_output = len(output_equation)

        self._output_equation = output_equation
        self.update_output_equation_function()

    def update_state_equation_function(self):
        if not self.dim_state or self.state_equation == empty_array():
            return
        self.state_equation_function = self.code_generator(
            [dynamicsymbols._t] + sp.flatten(self.state) +
            sp.flatten(self.input),
            self.state_equation.subs(self.constants_values),
            **self.code_generator_args
        )

    def update_state_jacobian_function(self):
        if not self.dim_state or self.state_equation == empty_array():
            return
        self.state_jacobian_equation_function = self.code_generator(
            [dynamicsymbols._t] + sp.flatten(self.state) +
            sp.flatten(self.input),
            self.state_jacobian_equation.subs(self.constants_values),
            **self.code_generator_args
        )

    def update_input_jacobian_function(self):
        # TODO: state-less systems should have an input/output jacobian
        if not self.dim_state or self.state_equation == empty_array():
            return
        self.input_jacobian_equation_function = self.code_generator(
            [dynamicsymbols._t] + sp.flatten(self.state) +
            sp.flatten(self.input),
            self.input_jacobian_equation.subs(self.constants_values),
            **self.code_generator_args
        )

    def update_output_equation_function(self):
        if not self.dim_output or self.output_equation == empty_array():
            return
        if self.dim_state:
            self.output_equation_function = self.code_generator(
                [dynamicsymbols._t] + sp.flatten(self.state),
                self.output_equation.subs(self.constants_values),
                **self.code_generator_args
            )
        else:
            self.output_equation_function = self.code_generator(
                [dynamicsymbols._t] + sp.flatten(self.input),
                self.output_equation.subs(self.constants_values),
                **self.code_generator_args
            )

    def prepare_to_integrate(self, t0, state_or_input=None):
        self.update_output_equation_function()
        self.update_state_equation_function()
        if not self.dim_state and self.num_events:
            self.update_equation_function(t0, state_or_input)
        if self.dim_state or self.dim_input:
            return self.output_equation_function(t0, state_or_input)
        else:
            return self.output_equation_function(t0)

    def copy(self):
        copy = self.__class__(
            state_equation=self.state_equation,
            state=self.state,
            input_=self.input,
            output_equation=self.output_equation,
            constants_values=self.constants_values,
            dt=self.dt
        )
        copy.output_equation_function = self.output_equation_function
        copy.state_equation_function = self.state_equation_function
        return copy

    def equilibrium_points(self, input_=None):
        return sp.solve(self.state_equation, self.state, dict=True)

class MemorylessSystem(DynamicalSystem):
    """
    A system with no state.

    With no input, can represent a signal (function of time only). For example,
    a stochastic signal could interpolate points and use prepare_to_integrate
    to re-seed the data.
    """
    def __init__(self, input_=None, output_equation=None, **kwargs):
        """
        DynamicalSystem constructor

        Parameters
        ----------
        input_ : array_like of sympy symbols
            Vector of symbols representing the components of the input, in the
            desired order. The output may depend on the system input.
        output_equation : array_like of sympy Expressions
            Vector valued expression for the output of the system.
        """
        super().__init__(
              input_=input_, output_equation=output_equation, **kwargs)

    @property
    def state(self):
        return self._state

    @state.setter
    def state(self, state):
        if state is None:  # or other checks?
            state = empty_array()
        else:
            raise ValueError("Memoryless system should not have state or " +
                             "state_equation")
        self.dim_state = len(state)
        self._state = state


text:
@echo off
pushd %~dp0
"%VS120COMNTOOLS%..\IDE\mstest" /test:Microsoft.Protocols.TestSuites.MS_FSSHTTP_FSSHTTPB.MS_FSSHTTP_FSSHTTPB_S02_Coauth.MSFSSHTTP_FSSHTTPB_S02_TC03_CoauthSubRequest_FileAlreadyCheckedOutOnServer /testcontainer:..\..\MS-FSSHTTP-FSSHTTPB\TestSuite\bin\Debug\MS-FSSHTTP-FSSHTTPB_TestSuite.dll /runconfig:..\..\MS-FSSHTTP-FSSHTTPB\MS-FSSHTTP-FSSHTTPB.testsettings /unique
pause