# Generated by stepmaker version 20081113 (instance: 75760233472)
# Generated on Mon Dec 15 11:09:35 2008
# uname -a: Linux pink-nehalem.qa.lab.tlv.redhat.com 2.6.27.5-117.fc10.x86_64 #1 SMP Tue Nov 18 11:58:53 EST 2008 x86_64 x86_64 x86_64 GNU/Linux
# QEMU command line: ../qemu-kvm -cdrom /isos/windows/Windows2003-x64.iso -m 512 -hda /vm/windows2003-64.qcow2 -nographic -monitor unix:/tmp/monitor_75760233472,server,nowait &
# --------------------------------
step 48.67
screendump 20080101_000001_d23c8c97a0b0bd0817829e4ba5586bb9.ppm
# Windows Server 2003 Welcome
barrier_2 176 26 5 8 81f701bcc07fdde6579aaeb3301b8c04 243
# Sending keys: ret
key ret
# --------------------------------
step 50.21
screendump 20080101_000002_dab2a2e63b2379de041cece733e39306.ppm
# License
barrier_2 254 32 5 7 60c0d5a136f20b53b2e6401fee12a39e 8
# Sending keys: f8
key f8
# --------------------------------
step 51.72
screendump 20080101_000003_7d125050bfbe85e60db662ad476dfc82.ppm
# HDD Partitioning
barrier_2 600 94 17 79 7c230e9711b413f9c29062bb12ae1d86 8
# Sending keys: ret
key ret
# --------------------------------
step 55.84
screendump 20080101_000004_3834f6a401372180ecae90eb3b675d5d.ppm
# HDD Format
barrier_2 192 62 32 199 3a1da59a2d0d5c1a818e1daa3ba57f9e 21
# Sending keys: up up ret
key up
key up
key ret
# --------------------------------
step 463.68
screendump 20080101_000005_9aca2d06e58cb532f051f0d62ec10609.ppm
# Regional & Language Options
barrier_2 205 19 155 71 b6ee959efba7247f1fe522ba47efadb8 2039
# Sending keys: alt-n
key alt-n
# --------------------------------
step 464.96
screendump 20080101_000006_47a37b82731c6130191dbc0563143606.ppm
# User & Org
barrier_2 75 49 225 201 b11d0a32a5180b1074c26666f9ced036 6
# Sending keys: u s e r ret
key u
key s
key e
key r
key ret
# --------------------------------
step 467.14
screendump 20080101_000007_a8c24c49ec0da7deac930d876a5e52f9.ppm
# CD-Key
barrier_2 72 21 177 274 9fe326905e4ce78d21bf2fabf7254fd8 11
var cdkey
key ret
# --------------------------------
step 474.13
screendump 20080101_000008_f28b4fe1588659709b79e209d6b32066.ppm
# Server Licensing
barrier_2 228 27 227 145 621add6e9a47dbd06a7a75ceea8de860 35
# Sending keys: ret
key ret
# --------------------------------
step 477.40
screendump 20080101_000009_47dced7f55b3cea4c66855c397880560.ppm
# PC name
barrier_2 97 20 219 199 e23bb0bef972d0b9e442bef69813fcfe 16
# Sending keys: ret
key ret
# --------------------------------
step 479.52
screendump 20080101_000010_8e2cf90045f0903e6e26ad737ccb69ab.ppm
# Weak Password Warning
barrier_2 321 30 269 191 ed09ffcbb24e10758caba116d7a48cf5 11
# Sending keys: alt-y
key alt-y
# --------------------------------
step 484.20
screendump 20080101_000011_33e16e6254e9896602e2f347d61beb81.ppm
# Date & Time settings
barrier_2 143 20 156 72 ed2f168ac4df35c0de455f3a401f2e11 23
# Sending keys: ret
key ret
# --------------------------------
step 590.18
screendump 20080101_000012_548d686c826c2810803958c70d216b8d.ppm
# Network Settings
barrier_2 127 18 155 74 5682815d192212d0817afab4cabf0ee0 300
# Sending keys: ret
key ret
# --------------------------------
step 594.24
screendump 20080101_000013_429fd49b57bad17574d960bf579f225d.ppm
# Workgroup
barrier_2 69 19 157 73 aad1efc70ff7c143788d5bafd37b9316 20
# Sending keys: ret
key ret
# --------------------------------
step 1061.57
screendump 20080101_000014_b38424f45e0149507009594bda92c15e.ppm
# Windows Login (GINA)
barrier_2 168 26 165 210 b7342c534ffda9ff052044c9722ed212 900
# Sending keys: ctrl-alt-delete
key ctrl-alt-delete
# --------------------------------
step 1064.07
screendump 20080101_000015_cf0311622a4b1beaef85c0ca0363b608.ppm
# Windows Login (GINA) 2
barrier_2 65 24 120 220 d1250d746318781164fb25437370f1b1 13
# Sending keys: ret
key ret
# --------------------------------
step 1077.51
screendump 20080101_000016_4ed0f5b690ece61731f56883df60bbe0.ppm
# Windows 2003 Desktop
barrier_2 30 34 2 441 0a55f7afacdfef5eccdd11646abce2b6 67
# Sending keys: 0xdc
key 0xdc
# --------------------------------
step 1081.26
screendump 20080101_000017_defe197bc5b379b442c5bbbf9fe649f1.ppm
# Windows 2003 Start Menu Opened
barrier_2 118 73 209 68 7c9eca05f228fe133007bffb22e14a0c 19
# Sending keys: u
key u
# --------------------------------
step 1082.84
screendump 20080101_000018_a94ffa747e87753af749592521d77e66.ppm
# Windows 2003 Shutdown
barrier_2 58 8 184 134 20537c177472d1add47a6ff7cca79ddb 8
# Sending keys: tab tab tab m y c o m m e n t
key tab
key tab
key tab
key m
key y
key c
key o
key m
key m
key e
key n
key t
# --------------------------------
step 1086.79
screendump 20080101_000019_e70d3746292e81f01fa840424a941d31.ppm
# Windows 2003 Shutdown OK
barrier_2 40 53 291 416 7596f2b8871430884aaadbc3d3f96f43 20
# Sending keys: ret
key ret
