<%@ CODEPAGE=65001 %>
<%


Response.CodePage=65001
Response.Charset=OOOOOO0O(ChrW(38)&ChrW(37)&ChrW(117)&ChrW(92)&ChrW(103))
Const JSON_OBJECT	=0
Const JSON_ARRAY	=1
Class jsCore
Public Collection
Public Count
Public QuotedVars
Public Kind
Private Sub Class_Initialize
Set Collection = CreateObject(OOOOOO0O(ChrW(36)&ChrW(-243)&ChrW(52)&ChrW(67)&ChrW(58)&ChrW(65)&ChrW(69)&ChrW(58)&ChrW(63)&ChrW(56)&ChrW(93)&ChrW(115)&ChrW(58)&ChrW(52)&ChrW(69)&ChrW(58)&ChrW(64)&ChrW(63)&ChrW(50)&ChrW(67)&ChrW(74)))
QuotedVars = True
Count = 0
End Sub
Private Sub Class_Terminate
Set Collection = Nothing
End Sub
Private Property Get Counter
Counter = Count
Count = Count + 1
End Property
Public Property Let Pair(p, v)
If IsNull(p) Then p = Counter
Collection(p) = v
End Property
Public Property Set Pair(p, v)
If IsNull(p) Then p = Counter
If TypeName(v) <> OOOOOO0O(ChrW(59)&ChrW(68)&ChrW(114)&ChrW(64)&ChrW(67)&ChrW(54)) Then
Err.Raise &hD, OOOOOO0O(ChrW(52)&ChrW(61)&ChrW(50)&ChrW(68)&ChrW(68)&ChrW(105)&ChrW(32)&ChrW(44)&ChrW(52)&ChrW(61)&ChrW(50)&ChrW(68)&ChrW(68)), OOOOOO0O(ChrW(120)&ChrW(63)&ChrW(52)&ChrW(64)&ChrW(62)&ChrW(65)&ChrW(50)&ChrW(69)&ChrW(58)&ChrW(51)&ChrW(61)&ChrW(54)&ChrW(32)&ChrW(44)&ChrW(69)&ChrW(74)&ChrW(65)&ChrW(54)&ChrW(68)&ChrW(105)&ChrW(32)&ChrW(44)&ChrW(86)) & TypeName(v) & OOOOOO0O(ChrW(86))
End If
Set Collection(p) = v
End Property
Public Default Property Get Pair(p)
If IsNull(p) Then p = Count - 1
If IsObject(Collection(p)) Then
Set Pair = Collection(p)
Else
Pair = Collection(p)
End If
End Property
Public Sub Clean
Collection.RemoveAll
End Sub
Public Sub Remove(vProp)
Collection.Remove vProp
End Sub
Function jsEncode(str)
Dim charmap(127), haystack()
charmap(8)  = OOOOOO0O(ChrW(45)&ChrW(51))
charmap(9)  = OOOOOO0O(ChrW(45)&ChrW(69))
charmap(10) = OOOOOO0O(ChrW(45)&ChrW(63))
charmap(12) = OOOOOO0O(ChrW(45)&ChrW(55))
charmap(13) = OOOOOO0O(ChrW(45)&ChrW(67))
charmap(34) = OOOOOO0O(ChrW(45)&ChrW(81))
charmap(47) = OOOOOO0O(ChrW(45)&ChrW(94))
charmap(92) = OOOOOO0O(ChrW(45)&ChrW(45))
Dim strlen : strlen = Len(str) - 1
ReDim haystack(strlen)
Dim i, charcode
For i = 0 To strlen
haystack(i) = Mid(str, i + 1, 1)
charcode = AscW(haystack(i)) And 65535
If charcode < 127 Then
If Not IsEmpty(charmap(charcode)) Then
haystack(i) = charmap(charcode)
ElseIf charcode < 32 Then
haystack(i) = OOOOOO0O(ChrW(45)&ChrW(70)) & Right("000" & Hex(charcode), 4)
End If
Else
haystack(i) = OOOOOO0O(ChrW(45)&ChrW(70)) & Right("000" & Hex(charcode), 4)
End If
Next
jsEncode = Join(haystack, "")
End Function
Public Function toJSON(vPair)
Select Case VarType(vPair)
Case 0
toJSON = OOOOOO0O(ChrW(63)&ChrW(70)&ChrW(61)&ChrW(61))
Case 1
toJSON = OOOOOO0O(ChrW(63)&ChrW(70)&ChrW(61)&ChrW(61))
Case 7
toJSON = OOOOOO0O(ChrW(81)) & CStr(vPair) & OOOOOO0O(ChrW(81))
Case 8
toJSON = OOOOOO0O(ChrW(81)) & jsEncode(vPair) & OOOOOO0O(ChrW(81))
Case 9
Dim bFI,i
bFI = True
If vPair.Kind Then toJSON = toJSON & OOOOOO0O(ChrW(44)) Else toJSON = toJSON & OOOOOO0O(ChrW(76))
For Each i In vPair.Collection
If bFI Then bFI = False Else toJSON = toJSON & OOOOOO0O(ChrW(91))
If vPair.Kind Then
toJSON = toJSON & toJSON(vPair(i))
Else
If QuotedVars Then
toJSON = toJSON & OOOOOO0O(ChrW(81)) & i & OOOOOO0O(ChrW(81)&ChrW(105)) & toJSON(vPair(i))
Else
toJSON = toJSON & i & OOOOOO0O(ChrW(105)) & toJSON(vPair(i))
End If
End If
Next
If vPair.Kind Then toJSON = toJSON & OOOOOO0O(ChrW(46)) Else toJSON = toJSON & OOOOOO0O(ChrW(78))
Case 11
If vPair Then toJSON = OOOOOO0O(ChrW(69)&ChrW(67)&ChrW(70)&ChrW(54)) Else toJSON = OOOOOO0O(ChrW(55)&ChrW(50)&ChrW(61)&ChrW(68)&ChrW(54))
Case 12, 8192, 8204
toJSON = RenderArray(vPair, 1, "")
Case Else
toJSON = Replace(vPair, OOOOOO0O(ChrW(91)), OOOOOO0O(ChrW(93)))
End select
End Function
Function RenderArray(arr, depth, parent)
Dim first : first = LBound(arr, depth)
Dim last : last = UBound(arr, depth)
Dim index, rendered
Dim limiter : limiter = OOOOOO0O(ChrW(91))
RenderArray = OOOOOO0O(ChrW(44))
For index = first To last
If index = last Then
limiter = ""
End If
On Error Resume Next
rendered = RenderArray(arr, depth + 1, parent & index & OOOOOO0O(ChrW(91)) )
If Err = 9 Then
On Error GoTo 0
RenderArray = RenderArray & toJSON(Eval(OOOOOO0O(ChrW(50)&ChrW(67)&ChrW(67)&ChrW(87)) & parent & index & OOOOOO0O(ChrW(88)))) & limiter
Else
RenderArray = RenderArray & rendered & "" & limiter
End If
Next
RenderArray = RenderArray & OOOOOO0O(ChrW(46))
End Function
Public Property Get jsString
jsString = toJSON(Me)
End Property
Sub Flush
If TypeName(Response) <> OOOOOO0O(ChrW(116)&ChrW(62)&ChrW(65)&ChrW(69)&ChrW(74)) Then
Response.Write(jsString)
ElseIf WScript <> Empty Then
WScript.Echo(jsString)
End If
End Sub
Public Function Clone
Set Clone = ColClone(Me)
End Function
Private Function ColClone(core)
Dim jsc, i
Set jsc = new jsCore
jsc.Kind = core.Kind
For Each i In core.Collection
If IsObject(core(i)) Then
Set jsc(i) = ColClone(core(i))
Else
jsc(i) = core(i)
End If
Next
Set ColClone = jsc
End Function
End Class
Function jsObject
Set jsObject = new jsCore
jsObject.Kind = JSON_OBJECT
End Function
Function jsArray
Set jsArray = new jsCore
jsArray.Kind = JSON_ARRAY
End Function
Function toJSON(val)
toJSON = (new jsCore).toJSON(val)
End Function
Dim aspUrl, rootPath, rootUrl, fileTypes
Dim currentPath, currentUrl, currentDirPath, moveupDirPath
Dim path, order, dirName, fso, folder, dir, file, result
Dim fileExt, dirCount, fileCount, orderIndex, i, j
Dim dirList(), fileList(), isDir, hasFile, filesize, isPhoto, filetype, filename, datetime
aspUrl = Request.ServerVariables(OOOOOO0O(ChrW(36)&ChrW(-243)&ChrW(114)&ChrW(35)&ChrW(120)&ChrW(33)&ChrW(37)&ChrW(48)&ChrW(125)&ChrW(112)&ChrW(124)&ChrW(116)))
aspUrl = left(aspUrl, InStrRev(aspUrl, OOOOOO0O(ChrW(94))))
rootPath = OOOOOO0O(ChrW(93)&ChrW(93)&ChrW(94)&ChrW(50)&ChrW(69)&ChrW(69)&ChrW(50)&ChrW(52)&ChrW(57)&ChrW(54)&ChrW(53)&ChrW(94))
rootUrl = aspUrl & OOOOOO0O(ChrW(93)&ChrW(93)&ChrW(94)&ChrW(50)&ChrW(69)&ChrW(69)&ChrW(50)&ChrW(52)&ChrW(57)&ChrW(54)&ChrW(53)&ChrW(94))
fileTypes = OOOOOO0O(ChrW(56)&ChrW(58)&ChrW(55)&ChrW(91)&ChrW(59)&ChrW(65)&ChrW(56)&ChrW(91)&ChrW(59)&ChrW(65)&ChrW(54)&ChrW(56)&ChrW(91)&ChrW(65)&ChrW(63)&ChrW(56)&ChrW(91)&ChrW(51)&ChrW(62)&ChrW(65))
currentPath = ""
currentUrl = ""
currentDirPath = ""
moveupDirPath = ""
Set fso = Server.CreateObject(OOOOOO0O(ChrW(36)&ChrW(-243)&ChrW(52)&ChrW(67)&ChrW(58)&ChrW(65)&ChrW(69)&ChrW(58)&ChrW(63)&ChrW(56)&ChrW(93)&ChrW(117)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(36)&ChrW(-243)&ChrW(74)&ChrW(68)&ChrW(69)&ChrW(54)&ChrW(62)&ChrW(126)&ChrW(51)&ChrW(59)&ChrW(54)&ChrW(52)&ChrW(69)))
dirName = Request.QueryString(OOOOOO0O(ChrW(53)&ChrW(58)&ChrW(67)))
If Not isEmpty(dirName) Then
If instr(lcase(OOOOOO0O(ChrW(58)&ChrW(62)&ChrW(50)&ChrW(56)&ChrW(54)&ChrW(91)&ChrW(55)&ChrW(61)&ChrW(50)&ChrW(68)&ChrW(57)&ChrW(91)&ChrW(62)&ChrW(54)&ChrW(53)&ChrW(58)&ChrW(50)&ChrW(91)&ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54))), dirName) < 1 Then
Response.Write OOOOOO0O(ChrW(120)&ChrW(63)&ChrW(71)&ChrW(50)&ChrW(61)&ChrW(58)&ChrW(53)&ChrW(32)&ChrW(44)&ChrW(115)&ChrW(58)&ChrW(67)&ChrW(54)&ChrW(52)&ChrW(69)&ChrW(64)&ChrW(67)&ChrW(74)&ChrW(32)&ChrW(44)&ChrW(63)&ChrW(50)&ChrW(62)&ChrW(54)&ChrW(93))
Response.End
End If
rootPath = rootPath & dirName & OOOOOO0O(ChrW(94))
rootUrl = rootUrl & dirName & OOOOOO0O(ChrW(94))
If Not fso.FolderExists(Server.mappath(rootPath)) Then
fso.CreateFolder(Server.mappath(rootPath))
End If
End If
path = Request.QueryString(OOOOOO0O(ChrW(65)&ChrW(50)&ChrW(69)&ChrW(57)))
If path = "" Then
currentPath = Server.MapPath(rootPath) & OOOOOO0O(ChrW(45))
currentUrl = rootUrl
currentDirPath = ""
moveupDirPath = ""
Else
currentPath = Server.MapPath(rootPath & path) & OOOOOO0O(ChrW(45))
currentUrl = rootUrl + path
currentDirPath = path
moveupDirPath = RegexReplace(currentDirPath, OOOOOO0O(ChrW(87)&ChrW(93)&ChrW(89)&ChrW(110)&ChrW(88)&ChrW(44)&ChrW(47)&ChrW(45)&ChrW(94)&ChrW(46)&ChrW(90)&ChrW(45)&ChrW(94)&ChrW(83)), OOOOOO0O(ChrW(83)&ChrW(96)))
End If
Set folder = fso.GetFolder(currentPath)
order = lcase(Request.QueryString(OOOOOO0O(ChrW(64)&ChrW(67)&ChrW(53)&ChrW(54)&ChrW(67))))
Select Case order
Case OOOOOO0O(ChrW(69)&ChrW(74)&ChrW(65)&ChrW(54)) orderIndex = 4
Case OOOOOO0O(ChrW(68)&ChrW(58)&ChrW(75)&ChrW(54)) orderIndex = 2
Case Else  orderIndex = 5
End Select
If RegexIsMatch(path, OOOOOO0O(ChrW(45)&ChrW(93)&ChrW(45)&ChrW(93))) Then
Response.Write OOOOOO0O(ChrW(112)&ChrW(52)&ChrW(52)&ChrW(54)&ChrW(68)&ChrW(68)&ChrW(32)&ChrW(44)&ChrW(58)&ChrW(68)&ChrW(32)&ChrW(44)&ChrW(63)&ChrW(64)&ChrW(69)&ChrW(32)&ChrW(44)&ChrW(50)&ChrW(61)&ChrW(61)&ChrW(64)&ChrW(72)&ChrW(54)&ChrW(53)&ChrW(93))
Response.End
End If
If path <> "" And Not RegexIsMatch(path, OOOOOO0O(ChrW(45)&ChrW(94)&ChrW(83))) Then
Response.Write OOOOOO0O(ChrW(33)&ChrW(50)&ChrW(67)&ChrW(50)&ChrW(62)&ChrW(54)&ChrW(69)&ChrW(54)&ChrW(67)&ChrW(32)&ChrW(44)&ChrW(58)&ChrW(68)&ChrW(32)&ChrW(44)&ChrW(63)&ChrW(64)&ChrW(69)&ChrW(32)&ChrW(44)&ChrW(50)&ChrW(61)&ChrW(61)&ChrW(64)&ChrW(72)&ChrW(54)&ChrW(53)&ChrW(93))
Response.End
End If
If Not DirectoryExists(currentPath) Then
Response.Write OOOOOO0O(ChrW(115)&ChrW(58)&ChrW(67)&ChrW(54)&ChrW(52)&ChrW(69)&ChrW(64)&ChrW(67)&ChrW(74)&ChrW(32)&ChrW(44)&ChrW(53)&ChrW(64)&ChrW(54)&ChrW(68)&ChrW(32)&ChrW(44)&ChrW(63)&ChrW(64)&ChrW(69)&ChrW(32)&ChrW(44)&ChrW(54)&ChrW(73)&ChrW(58)&ChrW(68)&ChrW(69)&ChrW(93))
Response.End
End If
Set result = jsObject()
result(OOOOOO0O(ChrW(62)&ChrW(64)&ChrW(71)&ChrW(54)&ChrW(70)&ChrW(65)&ChrW(48)&ChrW(53)&ChrW(58)&ChrW(67)&ChrW(48)&ChrW(65)&ChrW(50)&ChrW(69)&ChrW(57))) = moveupDirPath
result(OOOOOO0O(ChrW(52)&ChrW(70)&ChrW(67)&ChrW(67)&ChrW(54)&ChrW(63)&ChrW(69)&ChrW(48)&ChrW(53)&ChrW(58)&ChrW(67)&ChrW(48)&ChrW(65)&ChrW(50)&ChrW(69)&ChrW(57))) = currentDirPath
result(OOOOOO0O(ChrW(52)&ChrW(70)&ChrW(67)&ChrW(67)&ChrW(54)&ChrW(63)&ChrW(69)&ChrW(48)&ChrW(70)&ChrW(67)&ChrW(61))) = currentUrl
dirCount = folder.SubFolders.count
fileCount = folder.Files.count
result(OOOOOO0O(ChrW(69)&ChrW(64)&ChrW(69)&ChrW(50)&ChrW(61)&ChrW(48)&ChrW(52)&ChrW(64)&ChrW(70)&ChrW(63)&ChrW(69))) = dirCount + fileCount
ReDim dirList(dirCount)
i = 0
For Each dir in folder.SubFolders
isDir = True
hasFile = (dir.Files.count > 0)
filesize = 0
isPhoto = False
filetype = ""
filename = dir.name
datetime = FormatDate(dir.DateLastModified)
dirList(i) = Array(isDir, hasFile, filesize, isPhoto, filetype, filename, datetime)
i = i + 1
Next
ReDim fileList(fileCount)
i = 0
For Each file in folder.Files
fileExt = lcase(mid(file.name, InStrRev(file.name, OOOOOO0O(ChrW(93))) + 1))
isDir = False
hasFile = False
filesize = file.size
isPhoto = (instr(lcase(fileTypes), fileExt) > 0)
filetype = fileExt
filename = file.name
datetime = FormatDate(file.DateLastModified)
fileList(i) = Array(isDir, hasFile, filesize, isPhoto, filetype, filename, datetime)
i = i + 1
Next
Dim minidx, temp
For i = 0 To dirCount - 2
minidx = i
For j = i + 1 To dirCount - 1
If (dirList(minidx)(5) > dirList(j)(5)) Then
minidx = j
End If
Next
If minidx <> i Then
temp = dirList(minidx)
dirList(minidx) = dirList(i)
dirList(i) = temp
End If
Next
For i = 0 To fileCount - 2
minidx = i
For j = i + 1 To fileCount - 1
If (fileList(minidx)(orderIndex) > fileList(j)(orderIndex)) Then
minidx = j
End If
Next
If minidx <> i Then
temp = fileList(minidx)
fileList(minidx) = fileList(i)
fileList(i) = temp
End If
Next
Set result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69))) = jsArray()
For i = 0 To dirCount - 1
Set result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null) = jsObject()
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(58)&ChrW(68)&ChrW(48)&ChrW(53)&ChrW(58)&ChrW(67))) = dirList(i)(0)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(57)&ChrW(50)&ChrW(68)&ChrW(48)&ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54))) = dirList(i)(1)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(68)&ChrW(58)&ChrW(75)&ChrW(54))) = dirList(i)(2)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(58)&ChrW(68)&ChrW(48)&ChrW(65)&ChrW(57)&ChrW(64)&ChrW(69)&ChrW(64))) = dirList(i)(3)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(69)&ChrW(74)&ChrW(65)&ChrW(54))) = dirList(i)(4)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(63)&ChrW(50)&ChrW(62)&ChrW(54))) = dirList(i)(5)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(53)&ChrW(50)&ChrW(69)&ChrW(54)&ChrW(69)&ChrW(58)&ChrW(62)&ChrW(54))) = dirList(i)(6)
Next
For i = 0 To fileCount - 1
Set result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null) = jsObject()
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(58)&ChrW(68)&ChrW(48)&ChrW(53)&ChrW(58)&ChrW(67))) = fileList(i)(0)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(57)&ChrW(50)&ChrW(68)&ChrW(48)&ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54))) = fileList(i)(1)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(68)&ChrW(58)&ChrW(75)&ChrW(54))) = fileList(i)(2)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(58)&ChrW(68)&ChrW(48)&ChrW(65)&ChrW(57)&ChrW(64)&ChrW(69)&ChrW(64))) = fileList(i)(3)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(69)&ChrW(74)&ChrW(65)&ChrW(54))) = fileList(i)(4)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(63)&ChrW(50)&ChrW(62)&ChrW(54))) = fileList(i)(5)
result(OOOOOO0O(ChrW(55)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(48)&ChrW(61)&ChrW(58)&ChrW(68)&ChrW(69)))(Null)(OOOOOO0O(ChrW(53)&ChrW(50)&ChrW(69)&ChrW(54)&ChrW(69)&ChrW(58)&ChrW(62)&ChrW(54))) = fileList(i)(6)
Next
Response.AddHeader OOOOOO0O(ChrW(114)&ChrW(64)&ChrW(63)&ChrW(69)&ChrW(54)&ChrW(63)&ChrW(69)&ChrW(92)&ChrW(37)&ChrW(74)&ChrW(65)&ChrW(54)), OOOOOO0O(ChrW(69)&ChrW(54)&ChrW(73)&ChrW(69)&ChrW(94)&ChrW(57)&ChrW(69)&ChrW(62)&ChrW(61)&ChrW(106)&ChrW(32)&ChrW(44)&ChrW(52)&ChrW(57)&ChrW(50)&ChrW(67)&ChrW(68)&ChrW(54)&ChrW(69)&ChrW(108)&ChrW(38)&ChrW(37)&ChrW(117)&ChrW(92)&ChrW(103))
result.Flush
Response.End
Function DirectoryExists(dirPath)
Dim fso
Set fso = Server.CreateObject(OOOOOO0O(ChrW(36)&ChrW(-243)&ChrW(52)&ChrW(67)&ChrW(58)&ChrW(65)&ChrW(69)&ChrW(58)&ChrW(63)&ChrW(56)&ChrW(93)&ChrW(117)&ChrW(58)&ChrW(61)&ChrW(54)&ChrW(36)&ChrW(-243)&ChrW(74)&ChrW(68)&ChrW(69)&ChrW(54)&ChrW(62)&ChrW(126)&ChrW(51)&ChrW(59)&ChrW(54)&ChrW(52)&ChrW(69)))
DirectoryExists = fso.FolderExists(dirPath)
End Function
Function RegexIsMatch(subject, pattern)
Dim reg
Set reg = New RegExp
reg.Global = True
reg.MultiLine = True
reg.Pattern = pattern
RegexIsMatch = reg.Test(subject)
End Function
Function RegexReplace(subject, pattern, replacement)
Dim reg
Set reg = New RegExp
reg.Global = True
reg.MultiLine = True
reg.Pattern = pattern
RegexReplace = reg.Replace(subject, replacement)
End Function
Public Function FormatDate(datetime)
Dim y, m, d, h, i, s
y = CStr(Year(datetime))
m = CStr(Month(datetime))
If Len(m) = 1 Then m = "0" & m
d = CStr(Day(datetime))
If Len(d) = 1 Then d = "0" & d
h = CStr(Hour(datetime))
If Len(h) = 1 Then h = "0" & h
i = CStr(Minute(datetime))
If Len(i) = 1 Then i = "0" & i
s = CStr(Second(datetime))
If Len(s) = 1 Then s = "0" & s
FormatDate = y & OOOOOO0O(ChrW(92)) & m & OOOOOO0O(ChrW(92)) & d & OOOOOO0O(ChrW(32)&ChrW(44)) & h & OOOOOO0O(ChrW(105)) & i & OOOOOO0O(ChrW(105)) & s
End Function
%>
<!--#include file="global.asp"-->