MobileBlur

Hex Artifact Content
Login

Artifact 9f3bbb0a55ce51e34a9272953cc03d31815f1d38:


0000: 03 f3 0d 0a b8 13 80 4e 63 00 00 00 00 00 00 00  .......Nc.......
0010: 00 04 00 00 00 40 00 00 00 73 05 02 00 00 64 00  .....@...s....d.
0020: 00 5a 00 00 64 01 00 64 02 00 6c 01 00 5a 01 00  .Z..d..d..l..Z..
0030: 64 01 00 64 02 00 6c 02 00 5a 02 00 64 01 00 64  d..d..l..Z..d..d
0040: 02 00 6c 03 00 5a 03 00 65 02 00 6a 04 00 64 03  ..l..Z..e..j..d.
0050: 00 83 01 00 5a 05 00 64 02 00 5a 07 00 79 16 00  ....Z..d..Z..y..
0060: 64 01 00 64 02 00 6c 08 00 5a 08 00 64 04 00 5a  d..d..l..Z..d..Z
0070: 07 00 57 6e 07 00 01 01 01 6e 01 00 58 79 2e 00  ..Wn.....n..Xy..
0080: 64 01 00 64 02 00 6c 09 00 5a 09 00 64 01 00 64  d..d..l..Z..d..d
0090: 02 00 6c 0a 00 5a 0a 00 64 01 00 64 02 00 6c 0b  ..l..Z..d..d..l.
00a0: 00 5a 0b 00 64 05 00 5a 07 00 57 6e 07 00 01 01  .Z..d..Z..Wn....
00b0: 01 6e 01 00 58 65 07 00 64 05 00 6b 02 00 72 dc  .n..Xe..d..k..r.
00c0: 00 65 09 00 6a 0c 00 5a 0d 00 64 06 00 5a 0e 00  .e..j..Z..d..Z..
00d0: 65 09 00 6a 0f 00 5a 10 00 65 0b 00 6a 11 00 83  e..j..Z..e..j...
00e0: 00 00 5a 12 00 64 07 00 84 00 00 5a 13 00 64 08  ..Z..d.....Z..d.
00f0: 00 84 00 00 5a 14 00 6e 8f 00 65 07 00 64 04 00  ....Z..n..e..d..
0100: 6b 02 00 72 18 01 65 08 00 6a 0d 00 5a 0d 00 65  k..r..e..j..Z..e
0110: 08 00 6a 0e 00 5a 0e 00 65 08 00 6a 10 00 5a 10  ..j..Z..e..j..Z.
0120: 00 64 09 00 84 00 00 5a 13 00 64 0a 00 84 00 00  .d.....Z..d.....
0130: 5a 14 00 6e 53 00 65 03 00 6a 15 00 83 00 00 64  Z..nS.e..j.....d
0140: 0b 00 6b 02 00 72 3a 01 65 05 00 6a 16 00 64 0c  ..k..r:.e..j..d.
0150: 00 83 01 00 01 6e 0d 00 65 05 00 6a 17 00 64 0d  .....n..e..j..d.
0160: 00 83 01 00 01 64 02 00 5a 0d 00 64 02 00 5a 0e  .....d..Z..d..Z.
0170: 00 64 02 00 5a 10 00 64 0e 00 84 00 00 5a 13 00  .d..Z..d.....Z..
0180: 64 0f 00 84 00 00 5a 14 00 65 18 00 64 10 00 6b  d.....Z..e..d..k
0190: 02 00 72 01 02 64 01 00 64 11 00 6c 19 00 6d 19  ..r..d..d..l..m.
01a0: 00 5a 19 00 6d 1a 00 5a 1a 00 6d 1b 00 5a 1b 00  .Z..m..Z..m..Z..
01b0: 01 64 01 00 64 02 00 6c 1c 00 5a 1c 00 65 1d 00  .d..d..l..Z..e..
01c0: 64 12 00 64 13 00 83 02 00 5a 1e 00 65 13 00 65  d..d.....Z..e..e
01d0: 1e 00 65 0d 00 83 02 00 01 65 1a 00 64 14 00 65  ..e......e..d..e
01e0: 1b 00 65 19 00 83 00 00 83 01 00 83 02 00 5a 1f  ..e...........Z.
01f0: 00 65 1e 00 6a 20 00 65 1f 00 83 01 00 01 64 15  .e..j .e......d.
0200: 00 47 48 65 1c 00 6a 21 00 6a 22 00 83 00 00 5a  .GHe..j!.j"....Z
0210: 23 00 65 1e 00 6a 24 00 83 00 00 01 6e 00 00 64  #.e..j$.....n..d
0220: 02 00 53 28 16 00 00 00 73 db 02 00 00 0a 43 72  ..S(....s.....Cr
0230: 6f 73 73 2d 70 6c 61 74 66 6f 72 6d 20 28 70 6f  oss-platform (po
0240: 73 69 78 2f 6e 74 29 20 41 50 49 20 66 6f 72 20  six/nt) API for 
0250: 66 6c 6f 63 6b 2d 73 74 79 6c 65 20 66 69 6c 65  flock-style file
0260: 20 6c 6f 63 6b 69 6e 67 2e 0a 0a 53 79 6e 6f 70   locking...Synop
0270: 73 69 73 3a 0a 0a 20 20 20 69 6d 70 6f 72 74 20  sis:..   import 
0280: 70 6f 72 74 61 6c 6f 63 6b 65 72 0a 20 20 20 66  portalocker.   f
0290: 69 6c 65 20 3d 20 6f 70 65 6e 28 22 73 6f 6d 65  ile = open("some
02a0: 66 69 6c 65 22 2c 20 22 72 2b 22 29 0a 20 20 20  file", "r+").   
02b0: 70 6f 72 74 61 6c 6f 63 6b 65 72 2e 6c 6f 63 6b  portalocker.lock
02c0: 28 66 69 6c 65 2c 20 70 6f 72 74 61 6c 6f 63 6b  (file, portalock
02d0: 65 72 2e 4c 4f 43 4b 5f 45 58 29 0a 20 20 20 66  er.LOCK_EX).   f
02e0: 69 6c 65 2e 73 65 65 6b 28 31 32 29 0a 20 20 20  ile.seek(12).   
02f0: 66 69 6c 65 2e 77 72 69 74 65 28 22 66 6f 6f 22  file.write("foo"
0300: 29 0a 20 20 20 66 69 6c 65 2e 63 6c 6f 73 65 28  ).   file.close(
0310: 29 0a 0a 49 66 20 79 6f 75 20 6b 6e 6f 77 20 77  )..If you know w
0320: 68 61 74 20 79 6f 75 27 72 65 20 64 6f 69 6e 67  hat you're doing
0330: 2c 20 79 6f 75 20 6d 61 79 20 63 68 6f 6f 73 65  , you may choose
0340: 20 74 6f 0a 0a 20 20 20 70 6f 72 74 61 6c 6f 63   to..   portaloc
0350: 6b 65 72 2e 75 6e 6c 6f 63 6b 28 66 69 6c 65 29  ker.unlock(file)
0360: 0a 0a 62 65 66 6f 72 65 20 63 6c 6f 73 69 6e 67  ..before closing
0370: 20 74 68 65 20 66 69 6c 65 2c 20 62 75 74 20 77   the file, but w
0380: 68 79 3f 0a 0a 4d 65 74 68 6f 64 73 3a 0a 0a 20  hy?..Methods:.. 
0390: 20 20 6c 6f 63 6b 28 20 66 69 6c 65 2c 20 66 6c    lock( file, fl
03a0: 61 67 73 20 29 0a 20 20 20 75 6e 6c 6f 63 6b 28  ags ).   unlock(
03b0: 20 66 69 6c 65 20 29 0a 0a 43 6f 6e 73 74 61 6e   file )..Constan
03c0: 74 73 3a 0a 0a 20 20 20 4c 4f 43 4b 5f 45 58 0a  ts:..   LOCK_EX.
03d0: 20 20 20 4c 4f 43 4b 5f 53 48 0a 20 20 20 4c 4f     LOCK_SH.   LO
03e0: 43 4b 5f 4e 42 0a 0a 49 20 6c 65 61 72 6e 65 64  CK_NB..I learned
03f0: 20 74 68 65 20 77 69 6e 33 32 20 74 65 63 68 6e   the win32 techn
0400: 69 71 75 65 20 66 6f 72 20 6c 6f 63 6b 69 6e 67  ique for locking
0410: 20 66 69 6c 65 73 20 66 72 6f 6d 20 73 61 6d 70   files from samp
0420: 6c 65 20 63 6f 64 65 0a 70 72 6f 76 69 64 65 64  le code.provided
0430: 20 62 79 20 4a 6f 68 6e 20 4e 69 65 6c 73 65 6e   by John Nielsen
0440: 20 3c 6e 69 65 6c 73 65 6e 6a 66 40 6d 79 2d 64   <nielsenjf@my-d
0450: 65 6a 61 2e 63 6f 6d 3e 20 69 6e 20 74 68 65 20  eja.com> in the 
0460: 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 74 68  documentation.th
0470: 61 74 20 61 63 63 6f 6d 70 61 6e 69 65 73 20 74  at accompanies t
0480: 68 65 20 77 69 6e 33 32 20 6d 6f 64 75 6c 65 73  he win32 modules
0490: 2e 0a 0a 41 75 74 68 6f 72 3a 20 4a 6f 6e 61 74  ...Author: Jonat
04a0: 68 61 6e 20 46 65 69 6e 62 65 72 67 20 3c 6a 64  han Feinberg <jd
04b0: 66 40 70 6f 62 6f 78 2e 63 6f 6d 3e 0a 56 65 72  f@pobox.com>.Ver
04c0: 73 69 6f 6e 3a 20 24 49 64 3a 20 70 6f 72 74 61  sion: $Id: porta
04d0: 6c 6f 63 6b 65 72 2e 70 79 2c 76 20 31 2e 33 20  locker.py,v 1.3 
04e0: 32 30 30 31 2f 30 35 2f 32 39 20 31 38 3a 34 37  2001/05/29 18:47
04f0: 3a 35 35 20 41 64 6d 69 6e 69 73 74 72 61 74 6f  :55 Administrato
0500: 72 20 45 78 70 20 24 0a 69 ff ff ff ff 4e 74 06  r Exp $.i....Nt.
0510: 00 00 00 77 65 62 32 70 79 74 05 00 00 00 70 6f  ...web2pyt....po
0520: 73 69 78 74 07 00 00 00 77 69 6e 64 6f 77 73 69  sixt....windowsi
0530: 00 00 00 00 63 02 00 00 00 03 00 00 00 06 00 00  ....c...........
0540: 00 43 00 00 00 73 32 00 00 00 74 00 00 6a 01 00  .C...s2...t..j..
0550: 7c 00 00 6a 02 00 83 00 00 83 01 00 7d 02 00 74  |..j........}..t
0560: 00 00 6a 03 00 7c 02 00 7c 01 00 64 01 00 64 02  ..j..|..|..d..d.
0570: 00 74 04 00 83 05 00 01 64 00 00 53 28 03 00 00  .t......d..S(...
0580: 00 4e 69 00 00 00 00 69 00 00 ff 7f 28 05 00 00  .Ni....i....(...
0590: 00 74 09 00 00 00 77 69 6e 33 32 66 69 6c 65 74  .t....win32filet
05a0: 0e 00 00 00 5f 67 65 74 5f 6f 73 66 68 61 6e 64  ...._get_osfhand
05b0: 6c 65 74 06 00 00 00 66 69 6c 65 6e 6f 74 0a 00  let....filenot..
05c0: 00 00 4c 6f 63 6b 46 69 6c 65 45 78 74 0c 00 00  ..LockFileExt...
05d0: 00 5f 5f 6f 76 65 72 6c 61 70 70 65 64 28 03 00  .__overlapped(..
05e0: 00 00 74 04 00 00 00 66 69 6c 65 74 05 00 00 00  ..t....filet....
05f0: 66 6c 61 67 73 74 05 00 00 00 68 66 69 6c 65 28  flagst....hfile(
0600: 00 00 00 00 28 00 00 00 00 73 3f 00 00 00 2f 68  ....(....s?.../h
0610: 6f 6d 65 2f 73 70 69 66 66 79 2f 44 6f 63 75 6d  ome/spiffy/Docum
0620: 65 6e 74 73 2f 70 72 6f 67 72 61 6d 73 2f 6d 6f  ents/programs/mo
0630: 62 69 6c 65 62 6c 75 72 2f 67 6c 75 6f 6e 2f 70  bileblur/gluon/p
0640: 6f 72 74 61 6c 6f 63 6b 65 72 2e 70 79 74 04 00  ortalocker.pyt..
0650: 00 00 6c 6f 63 6b 47 00 00 00 73 04 00 00 00 00  ..lockG...s.....
0660: 01 15 01 63 01 00 00 00 02 00 00 00 05 00 00 00  ...c............
0670: 43 00 00 00 73 2f 00 00 00 74 00 00 6a 01 00 7c  C...s/...t..j..|
0680: 00 00 6a 02 00 83 00 00 83 01 00 7d 01 00 74 00  ..j........}..t.
0690: 00 6a 03 00 7c 01 00 64 01 00 64 02 00 74 04 00  .j..|..d..d..t..
06a0: 83 04 00 01 64 00 00 53 28 03 00 00 00 4e 69 00  ....d..S(....Ni.
06b0: 00 00 00 69 00 00 ff 7f 28 05 00 00 00 52 03 00  ...i....(....R..
06c0: 00 00 52 04 00 00 00 52 05 00 00 00 74 0c 00 00  ..R....R....t...
06d0: 00 55 6e 6c 6f 63 6b 46 69 6c 65 45 78 52 07 00  .UnlockFileExR..
06e0: 00 00 28 02 00 00 00 52 08 00 00 00 52 0a 00 00  ..(....R....R...
06f0: 00 28 00 00 00 00 28 00 00 00 00 73 3f 00 00 00  .(....(....s?...
0700: 2f 68 6f 6d 65 2f 73 70 69 66 66 79 2f 44 6f 63  /home/spiffy/Doc
0710: 75 6d 65 6e 74 73 2f 70 72 6f 67 72 61 6d 73 2f  uments/programs/
0720: 6d 6f 62 69 6c 65 62 6c 75 72 2f 67 6c 75 6f 6e  mobileblur/gluon
0730: 2f 70 6f 72 74 61 6c 6f 63 6b 65 72 2e 70 79 74  /portalocker.pyt
0740: 06 00 00 00 75 6e 6c 6f 63 6b 4b 00 00 00 73 04  ....unlockK...s.
0750: 00 00 00 00 01 15 01 63 02 00 00 00 02 00 00 00  .......c........
0760: 03 00 00 00 43 00 00 00 73 1a 00 00 00 74 00 00  ....C...s....t..
0770: 6a 01 00 7c 00 00 6a 02 00 83 00 00 7c 01 00 83  j..|..j.....|...
0780: 02 00 01 64 00 00 53 28 01 00 00 00 4e 28 03 00  ...d..S(....N(..
0790: 00 00 74 05 00 00 00 66 63 6e 74 6c 74 05 00 00  ..t....fcntlt...
07a0: 00 66 6c 6f 63 6b 52 05 00 00 00 28 02 00 00 00  .flockR....(....
07b0: 52 08 00 00 00 52 09 00 00 00 28 00 00 00 00 28  R....R....(....(
07c0: 00 00 00 00 73 3f 00 00 00 2f 68 6f 6d 65 2f 73  ....s?.../home/s
07d0: 70 69 66 66 79 2f 44 6f 63 75 6d 65 6e 74 73 2f  piffy/Documents/
07e0: 70 72 6f 67 72 61 6d 73 2f 6d 6f 62 69 6c 65 62  programs/mobileb
07f0: 6c 75 72 2f 67 6c 75 6f 6e 2f 70 6f 72 74 61 6c  lur/gluon/portal
0800: 6f 63 6b 65 72 2e 70 79 52 0b 00 00 00 55 00 00  ocker.pyR....U..
0810: 00 73 02 00 00 00 00 01 63 01 00 00 00 01 00 00  .s......c.......
0820: 00 03 00 00 00 43 00 00 00 73 1d 00 00 00 74 00  .....C...s....t.
0830: 00 6a 01 00 7c 00 00 6a 02 00 83 00 00 74 00 00  .j..|..j.....t..
0840: 6a 03 00 83 02 00 01 64 00 00 53 28 01 00 00 00  j......d..S(....
0850: 4e 28 04 00 00 00 52 0e 00 00 00 52 0f 00 00 00  N(....R....R....
0860: 52 05 00 00 00 74 07 00 00 00 4c 4f 43 4b 5f 55  R....t....LOCK_U
0870: 4e 28 01 00 00 00 52 08 00 00 00 28 00 00 00 00  N(....R....(....
0880: 28 00 00 00 00 73 3f 00 00 00 2f 68 6f 6d 65 2f  (....s?.../home/
0890: 73 70 69 66 66 79 2f 44 6f 63 75 6d 65 6e 74 73  spiffy/Documents
08a0: 2f 70 72 6f 67 72 61 6d 73 2f 6d 6f 62 69 6c 65  /programs/mobile
08b0: 62 6c 75 72 2f 67 6c 75 6f 6e 2f 70 6f 72 74 61  blur/gluon/porta
08c0: 6c 6f 63 6b 65 72 2e 70 79 52 0d 00 00 00 58 00  locker.pyR....X.
08d0: 00 00 73 02 00 00 00 00 01 74 07 00 00 00 57 69  ..s......t....Wi
08e0: 6e 64 6f 77 73 73 6b 00 00 00 6e 6f 20 66 69 6c  ndowssk...no fil
08f0: 65 20 6c 6f 63 6b 69 6e 67 2c 20 79 6f 75 20 6d  e locking, you m
0900: 75 73 74 20 69 6e 73 74 61 6c 6c 20 74 68 65 20  ust install the 
0910: 77 69 6e 33 32 20 65 78 74 65 6e 73 69 6f 6e 73  win32 extensions
0920: 20 66 72 6f 6d 3a 20 68 74 74 70 3a 2f 2f 73 6f   from: http://so
0930: 75 72 63 65 66 6f 72 67 65 2e 6e 65 74 2f 70 72  urceforge.net/pr
0940: 6f 6a 65 63 74 73 2f 70 79 77 69 6e 33 32 2f 66  ojects/pywin32/f
0950: 69 6c 65 73 2f 73 29 00 00 00 6e 6f 20 66 69 6c  iles/s)...no fil
0960: 65 20 6c 6f 63 6b 69 6e 67 2c 20 74 68 69 73 20  e locking, this 
0970: 77 69 6c 6c 20 63 61 75 73 65 20 70 72 6f 62 6c  will cause probl
0980: 65 6d 73 63 02 00 00 00 02 00 00 00 01 00 00 00  emsc............
0990: 43 00 00 00 73 04 00 00 00 64 00 00 53 28 01 00  C...s....d..S(..
09a0: 00 00 4e 28 00 00 00 00 28 02 00 00 00 52 08 00  ..N(....(....R..
09b0: 00 00 52 09 00 00 00 28 00 00 00 00 28 00 00 00  ..R....(....(...
09c0: 00 73 3f 00 00 00 2f 68 6f 6d 65 2f 73 70 69 66  .s?.../home/spif
09d0: 66 79 2f 44 6f 63 75 6d 65 6e 74 73 2f 70 72 6f  fy/Documents/pro
09e0: 67 72 61 6d 73 2f 6d 6f 62 69 6c 65 62 6c 75 72  grams/mobileblur
09f0: 2f 67 6c 75 6f 6e 2f 70 6f 72 74 61 6c 6f 63 6b  /gluon/portalock
0a00: 65 72 2e 70 79 52 0b 00 00 00 66 00 00 00 73 02  er.pyR....f...s.
0a10: 00 00 00 00 01 63 01 00 00 00 01 00 00 00 01 00  .....c..........
0a20: 00 00 43 00 00 00 73 04 00 00 00 64 00 00 53 28  ..C...s....d..S(
0a30: 01 00 00 00 4e 28 00 00 00 00 28 01 00 00 00 52  ....N(....(....R
0a40: 08 00 00 00 28 00 00 00 00 28 00 00 00 00 73 3f  ....(....(....s?
0a50: 00 00 00 2f 68 6f 6d 65 2f 73 70 69 66 66 79 2f  .../home/spiffy/
0a60: 44 6f 63 75 6d 65 6e 74 73 2f 70 72 6f 67 72 61  Documents/progra
0a70: 6d 73 2f 6d 6f 62 69 6c 65 62 6c 75 72 2f 67 6c  ms/mobileblur/gl
0a80: 75 6f 6e 2f 70 6f 72 74 61 6c 6f 63 6b 65 72 2e  uon/portalocker.
0a90: 70 79 52 0d 00 00 00 69 00 00 00 73 02 00 00 00  pyR....i...s....
0aa0: 00 01 74 08 00 00 00 5f 5f 6d 61 69 6e 5f 5f 28  ..t....__main__(
0ab0: 03 00 00 00 74 04 00 00 00 74 69 6d 65 74 08 00  ....t....timet..
0ac0: 00 00 73 74 72 66 74 69 6d 65 74 09 00 00 00 6c  ..strftimet....l
0ad0: 6f 63 61 6c 74 69 6d 65 73 07 00 00 00 6c 6f 67  ocaltimes....log
0ae0: 2e 74 78 74 73 02 00 00 00 61 2b 73 12 00 00 00  .txts....a+s....
0af0: 25 6d 2f 25 64 2f 25 59 20 25 48 3a 25 4d 3a 25  %m/%d/%Y %H:%M:%
0b00: 53 0a 73 27 00 00 00 57 72 6f 74 65 20 6c 69 6e  S.s'...Wrote lin
0b10: 65 73 2e 20 48 69 74 20 65 6e 74 65 72 20 74 6f  es. Hit enter to
0b20: 20 72 65 6c 65 61 73 65 20 6c 6f 63 6b 2e 28 25   release lock.(%
0b30: 00 00 00 74 07 00 00 00 5f 5f 64 6f 63 5f 5f 74  ...t....__doc__t
0b40: 02 00 00 00 6f 73 74 07 00 00 00 6c 6f 67 67 69  ....ost....loggi
0b50: 6e 67 74 08 00 00 00 70 6c 61 74 66 6f 72 6d 74  ngt....platformt
0b60: 09 00 00 00 67 65 74 4c 6f 67 67 65 72 74 06 00  ....getLoggert..
0b70: 00 00 6c 6f 67 67 65 72 74 04 00 00 00 4e 6f 6e  ..loggert....Non
0b80: 65 74 0a 00 00 00 6f 73 5f 6c 6f 63 6b 69 6e 67  et....os_locking
0b90: 52 0e 00 00 00 74 08 00 00 00 77 69 6e 33 32 63  R....t....win32c
0ba0: 6f 6e 52 03 00 00 00 74 0a 00 00 00 70 79 77 69  onR....t....pywi
0bb0: 6e 74 79 70 65 73 74 17 00 00 00 4c 4f 43 4b 46  ntypest....LOCKF
0bc0: 49 4c 45 5f 45 58 43 4c 55 53 49 56 45 5f 4c 4f  ILE_EXCLUSIVE_LO
0bd0: 43 4b 74 07 00 00 00 4c 4f 43 4b 5f 45 58 74 07  CKt....LOCK_EXt.
0be0: 00 00 00 4c 4f 43 4b 5f 53 48 74 19 00 00 00 4c  ...LOCK_SHt....L
0bf0: 4f 43 4b 46 49 4c 45 5f 46 41 49 4c 5f 49 4d 4d  OCKFILE_FAIL_IMM
0c00: 45 44 49 41 54 45 4c 59 74 07 00 00 00 4c 4f 43  EDIATELYt....LOC
0c10: 4b 5f 4e 42 74 0a 00 00 00 4f 56 45 52 4c 41 50  K_NBt....OVERLAP
0c20: 50 45 44 52 07 00 00 00 52 0b 00 00 00 52 0d 00  PEDR....R....R..
0c30: 00 00 74 06 00 00 00 73 79 73 74 65 6d 74 05 00  ..t....systemt..
0c40: 00 00 65 72 72 6f 72 74 05 00 00 00 64 65 62 75  ..errort....debu
0c50: 67 74 08 00 00 00 5f 5f 6e 61 6d 65 5f 5f 52 13  gt....__name__R.
0c60: 00 00 00 52 14 00 00 00 52 15 00 00 00 74 03 00  ...R....R....t..
0c70: 00 00 73 79 73 74 04 00 00 00 6f 70 65 6e 74 03  ..syst....opent.
0c80: 00 00 00 6c 6f 67 74 09 00 00 00 74 69 6d 65 73  ...logt....times
0c90: 74 61 6d 70 74 05 00 00 00 77 72 69 74 65 74 05  tampt....writet.
0ca0: 00 00 00 73 74 64 69 6e 74 08 00 00 00 72 65 61  ...stdint....rea
0cb0: 64 6c 69 6e 65 74 05 00 00 00 64 75 6d 6d 79 74  dlinet....dummyt
0cc0: 05 00 00 00 63 6c 6f 73 65 28 00 00 00 00 28 00  ....close(....(.
0cd0: 00 00 00 28 00 00 00 00 73 3f 00 00 00 2f 68 6f  ...(....s?.../ho
0ce0: 6d 65 2f 73 70 69 66 66 79 2f 44 6f 63 75 6d 65  me/spiffy/Docume
0cf0: 6e 74 73 2f 70 72 6f 67 72 61 6d 73 2f 6d 6f 62  nts/programs/mob
0d00: 69 6c 65 62 6c 75 72 2f 67 6c 75 6f 6e 2f 70 6f  ileblur/gluon/po
0d10: 72 74 61 6c 6f 63 6b 65 72 2e 70 79 74 08 00 00  rtalocker.pyt...
0d20: 00 3c 6d 6f 64 75 6c 65 3e 29 00 00 00 73 60 00  .<module>)...s`.
0d30: 00 00 06 02 0c 01 0c 01 0c 01 0f 02 06 01 03 01  ................
0d40: 0c 01 0a 01 03 01 04 01 03 01 0c 01 0c 01 0c 01  ................
0d50: 0a 01 03 01 04 02 0c 01 09 01 06 01 09 04 0c 02  ................
0d60: 09 04 0c 05 0c 01 09 01 09 01 09 02 09 03 0c 05  ................
0d70: 12 01 10 02 0d 02 06 01 06 01 06 02 09 03 09 04  ................
0d80: 0c 01 1c 01 0c 02 0f 01 0d 02 18 01 0d 02 05 01  ................
0d90: 0f 02                                            ..