Unexpected end of file when deploying an image with ghost

phonewatch's picture
I am having issues deploying images with Ghost.
I can create the images ok.It doesnt show up any error image but when i try to deploy the image i get the following error message
Unexpected enf of file.
 
 
*********************************
Date   : Mon Feb  4 14:59:49 2008
Error Number: (10008)
Message: Unexpected end of file
Version: 11.0.1.1533 (Apr 19 2007, Build=1533)
OS Version: DOS v7.10
Command line arguments:
Active Switches :
       AutoName
PathName            : 2397 cmdial32.dll
DumpFile            : Z:\DATA\IT\IMAGES\U330\U330.GHO
DumpPos             : 201752576
Last LFO Buffersize : 32768
Last LFO Path       :
  Full Path         : z:\DATA\IT\IMAGES\U330\U330.GHO
  Drive Letter      : z:\
Last LFO Filesystem : Native
FlagImplode         : 0
FlagExplode         : 3
Operation Details :
  Total size.........1270
  MB copied..........347
  MB remaining.......923
  Percent complete...27%
  Speed..............196 MB/min
  Time elapsed.......1:46  
  Time remaining.....4:41  
Program Call Stack
AbortLog
Generic_Abort
DumpRead
NTFSRead
readNextSeqPacket
loadRun
loadAttribute
loadAttributes
loadMFTRec
loadMFT
loadVol
LoadNTFSPartition
ProcessNTFSPartition
CopyPartition
ProcessAllPartitions
CopyAllPartitions
CopyFileToDisk
CopyMainline
AttemptOperation
sub_main
main
Call Stack
  0x00397a4c
  0x0009cd91
  0x0009c5cc
  0x0009bca7
  0x0009d872
  0x000380cc
  0x00053e6b
  0x00053942
  0x00052f02
  0x000528cb
  0x000517d0
  0x0004fc67
  0x0004e64a
  0x0004d81d
  0x000173e9
  0x000197d5
  0x000c9984
  0x000c92db
  0x000c9171
  0x000c722c
  0x0000220f
  0x00002374
  0x00005057
  0x00003f2f
  0x003a0c78
End Call Stack

Start heap available: 58208256
Cur   heap available: 37498880
Total Memory:         65744896
Allocated
   1024 DpmiDjgpp.cpp:56
  33504 ghost.cpp:1396
     64 DiskDriveAccessExInt13.cpp:139
     48 DiskDriveAccessExInt13.cpp:139
    528 IdeDmaServerPci.cpp:127
    528 IdeDmaServerPci.cpp:127
    528 IdeDmaServerPci.cpp:127
    528 IdeDmaServerPci.cpp:127
Free
    512 DiskDriveAccessInt13.cpp:184
     48 MsdosLfoFilesystem.cpp:412
   1024 DiskDriveAccessInt13.cpp:184
   2048 DiskDriveAccessInt13.cpp:184
  32768 AlignBufferedImageFileDevice.cpp:89
  32768 djdisk.cpp:332
   4096 MsdosFile.cpp:368
  16384 MsdosFile.cpp:368
Fat details:
NTFS details:
----------------
NTFS Global Flags:
----------------
  contiguousWrite=1 forceDiskClusterMapping=0
  inhi**bleep**KDSK=1 ignoreBadLog=0 ignoreCHKDSKBit=0
  enable_cache=0 xfrbuflen=32768
  last_attr_type = 0
  loadExact = 0
----------------
 =======================================================
 NTFS volume 0:
 ----------------
 initialised..............1
 read cached..............N
 Selective caching........N
 flags....................Volume OK
 drive....................0x01
 part order...............0
 version..................0x0400
 volsize..................156295376
 blocksize................512
 clusterfactor............8
 clustersize..............4096
 mftrecordsize............1024
 indexrecordsize..........4096
 indexclustperrecord......1
 bootSectorCopyOffset.....156295376
 pagefileSys..............-1
 bootIni..................3508
 volumeLabel..............[]
 sectorsInUse.............4149984
 totalNonCopiedBytes......0
 bytesToCopy..............0
 bitmapClusters...........597
 bitmapUsedBytes..........2441880
 estimatedClusters........597
 estimatedUsedBytes.......2441880
 clustersizeShift.........12
 blocksizeShift...........9
 mftrecordsizeShift.......10
 indexrecordsizeShift.....12
 totalRootMftRecs.........11390
 clustermap failover......N
 Boot sector details
  name....................[NTFS    ]
  blocksize...............512
  clusterfactor...........8
  reservedSectorsUnused...0
  mediaType...............0xf8
  secPerTrack.............63
  numHeads................240
  hiddenSectors...........63
  volsize.................156295376
  mftcluster..............786432
  mftmirrorcluster........16
  clustersPerMFTRecord....246
  clustersPerIndexBuffer..1
  ---------------------------------------------------
  Cluster Allocation Map
  ---------------------------------------------------
  Start: 0 Length: 281431 Next: 281431
       Gap: 505001
  Start: 786432 Length: 2442116 Next: 3228548
       Gap: 16308374
  Start: 19536922 Length: 0 Next: 19536922

 =======================================================
 =======================================================
 NTFS volume 1:
 ----------------
 initialised..............1
 read cached..............N
 Selective caching........N
 flags....................Volume OK
 drive....................0x01
 part order...............0
 version..................0x0400
 volsize..................156280256
 blocksize................512
 clusterfactor............8
 clustersize..............4096
 mftrecordsize............1024
 indexrecordsize..........4096
 indexclustperrecord......1
 bootSectorCopyOffset.....156280256
 pagefileSys..............-1
 bootIni..................-1
 volumeLabel..............[]
 sectorsInUse.............13021232
 totalNonCopiedBytes......0
 bytesToCopy..............0
 bitmapClusters...........597
 bitmapUsedBytes..........2441880
 estimatedClusters........597
 estimatedUsedBytes.......2441880
 clustersizeShift.........12
 blocksizeShift...........9
 mftrecordsizeShift.......10
 indexrecordsizeShift.....12
 totalRootMftRecs.........0
 clustermap failover......N
 Boot sector details
  name....................[NTFS    ]
  blocksize...............512
  clusterfactor...........8
  reservedSectorsUnused...0
  mediaType...............0xf8
  secPerTrack.............63
  numHeads................240
  hiddenSectors...........63
  volsize.................156280256
  mftcluster..............786432
  mftmirrorcluster........9767516
  clustersPerMFTRecord....246
  clustersPerIndexBuffer..1
  ---------------------------------------------------
  Cluster Allocation Map
  ---------------------------------------------------
  Start: 19535032 Length: 0 Next: 19535032

 =======================================================
Disk Info :
  remote.............0
  drive..............1
  sectorsUsedCount.......156280257
  estimatedUsedCount.....2601697
  numPartitions..............1
  Version............1101
 # Ord Boot Id Ext     First        Num       Last       Used NTFS
 0  0    1   7 No         63  156280257  156280320    4149984 Yes
Disk Info :
  remote.............0
  drive..............1
  sectorsUsedCount.......156295440
  estimatedUsedCount.....0
  numPartitions..............1
  Version............0
 # Ord Boot Id Ext     First        Num       Last       Used NTFS
 0  0    1   7 No         63  156295377  156295440    4149984 Yes
Fixed Drives
Drive 128
Int 13h (Active)
Total Sectors            4016250
Bytes per Sector         512
MB                       1961
Cylinders                250
Heads                    255
Sectors per Track        63
Successful IO Count      23
Extended Int 13h
Total Sectors            4030464
Bytes per Sector         512
MB                       1968
Cylinders                7872
Heads                    16
Sectors per Track        32
Successful IO Count      0
Drive 129 ST380011A 5JV3W3YY
Int 13h
Total Sectors            15467760
Bytes per Sector         512
MB                       7552
Cylinders                1023
Heads                    240
Sectors per Track        63
Successful IO Count      0
Extended Int 13h
Total Sectors            156301488
Bytes per Sector         512
MB                       76319
Successful IO Count      0
IDE using PIO
Total Sectors            156301488
Bytes per Sector         512
MB                       76319
Cylinders                16383
Heads                    16
Sectors per Track        63
Successful IO Count      0
IDE using UDMA (Active)
Total Sectors            156301488
Bytes per Sector         512
MB                       76319
Cylinders                16383
Heads                    16
Sectors per Track        63
Successful IO Count      144
Floppy Drives
Drive 0
Int 13h (Active)
Total Sectors            2880
Bytes per Sector         512
MB                       1
Cylinders                80
Heads                    2
Sectors per Track        18
Successful IO Count      1
Remote Drives
AsyncIo : 1
phonewatch's picture


752: 01 04 00 00 70 04 00 00 00 00 00 00 09 00 00 00  ....p...........
768: FF FF FF FF 46 69 78 65 64 20 44 72 69 76 65 73  ....Fixed Drives
784: 0A 0A 44 72 69 76 65 20 31 32 38 0A 49 6E 74 20  ..Drive 128.Int
800: 31 33 68 20 28 41 63 74 69 76 65 29 0A 54 6F 74  13h (Active).Tot
816: 61 6C 20 53 65 63 74 6F 72 73 20 20 20 20 20 20  al Sectors     
832: 20 20 20 20 20 20 34 30 31 36 32 35 30 0A 42 79        4016250.By
848: 74 65 73 20 70 65 72 20 53 65 63 74 6F 72 20 20  tes per Sector 
864: 20 20 20 20 20 20 20 35 31 32 0A 4D 42 20 20 20         512.MB  
880: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                 
896: 20 20 20 20 31 39 36 31 0A 43 79 6C 69 6E 64 65      1961.Cylinde
912: 72 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20  rs             
928: 20 20 32 35 30 0A 48 65 61 64 73 20 20 20 20 20    250.Heads    
944: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 32                 2
960: 35 35 0A 53 65 63 74 6F 72 73 20 70 65 72 20 54  55.Sectors per T
976: 72 61 63 6B 20 20 20 20 20 20 20 20 36 33 0A 53  rack        63.S
992: 75 63 63 65 73 73 66 75 6C 20 49 4F 20 43 6F 75  uccessful IO Cou
1008: 6E 74 20 20 20 20 20 20 32 33 0A 0A 45 78 74 65  nt      23..Exte
1024: 6E 64 65 64 20 49 6E 74 20 31 33 68 0A 54 6F 74  nded Int 13h.Tot
1040: 61 6C 20 53 65 63 74 6F 72 73 20 20 20 20 20 20  al Sectors     
1056: 20 20 20 20 20 20 34 30 33 30 34 36 34 0A 42 79        4030464.By
1072: 74 65 73 20 70 65 72 20 53 65 63 74 6F 72 20 20  tes per Sector 
1088: 20 20 20 20 20 20 20 35 31 32 0A 4D 42 20 20 20         512.MB  
1104: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                 
1120: 20 20 20 20 31 39 36 38 0A 43 79 6C 69 6E 64 65      1968.Cylinde
1136: 72 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20  rs             
1152: 20 20 37 38 37 32 0A 48 65 61 64 73 20 20 20 20    7872.Heads   
1168: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                 
1184: 31 36 0A 53 65 63 74 6F 72 73 20 70 65 72 20 54  16.Sectors per T
1200: 72 61 63 6B 20 20 20 20 20 20 20 20 33 32 0A 53  rack        32.S
1216: 75 63 63 65 73 73 66 75 6C 20 49 4F 20 43 6F 75  uccessful IO Cou
1232: 6E 74 20 20 20 20 20 20 30 0A 0A 44 72 69 76 65  nt      0..Drive
1248: 20 31 32 39 20 53 54 33 38 30 30 31 31 41 20 35   129 ST380011A 5
1264: 4A 56 33 57 33 59 59 0A 49 6E 74 20 31 33 68 0A  JV3W3YY.Int 13h.
1280: 54 6F 74 61 6C 20 53 65 63 74 6F 72 73 20 20 20  Total Sectors  
1296: 20 20 20 20 20 20 20 20 20 31 35 34 36 37 37 36           1546776
1312: 30 0A 42 79 74 65 73 20 70 65 72 20 53 65 63 74  0.Bytes per Sect
1328: 6F 72 20 20 20 20 20 20 20 20 20 35 31 32 0A 4D  or         512.M
1344: 42 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  B              
1360: 20 20 20 20 20 20 20 20 37 35 35 32 0A 43 79 6C          7552.Cyl
1376: 69 6E 64 65 72 73 20 20 20 20 20 20 20 20 20 20  inders         
1392: 20 20 20 20 20 20 31 30 32 33 0A 48 65 61 64 73        1023.Heads
1408: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                 
1424: 20 20 20 20 32 34 30 0A 53 65 63 74 6F 72 73 20      240.Sectors
1440: 70 65 72 20 54 72 61 63 6B 20 20 20 20 20 20 20  per Track      
1456: 20 36 33 0A 53 75 63 63 65 73 73 66 75 6C 20 49   63.Successful I
1472: 4F 20 43 6F 75 6E 74 20 20 20 20 20 20 30 0A 0A  O Count      0..
1488: 45 78 74 65 6E 64 65 64 20 49 6E 74 20 31 33 68  Extended Int 13h
1504: 0A 54 6F 74 61 6C 20 53 65 63 74 6F 72 73 20 20  .Total Sectors 
1520: 20 20 20 20 20 20 20 20 20 20 31 35 36 33 30 31            156301
1536: 34 38 38 0A 42 79 74 65 73 20 70 65 72 20 53 65  488.Bytes per Se
1552: 63 74 6F 72 20 20 20 20 20 20 20 20 20 35 31 32  ctor         512
1568: 0A 4D 42 20 20 20 20 20 20 20 20 20 20 20 20 20  .MB            
1584: 20 20 20 20 20 20 20 20 20 20 37 36 33 31 39 0A            76319.
1600: 53 75 63 63 65 73 73 66 75 6C 20 49 4F 20 43 6F  Successful IO Co
1616: 75 6E 74 20 20 20 20 20 20 30 0A 0A 49 44 45 20  unt      0..IDE
1632: 75 73 69 6E 67 20 50 49 4F 0A 54 6F 74 61 6C 20  using PIO.Total
1648: 53 65 63 74 6F 72 73 20 20 20 20 20 20 20 20 20  Sectors        
1664: 20 20 20 31 35 36 33 30 31 34 38 38 0A 42 79 74     156301488.Byt
1680: 65 73 20 70 65 72 20 53 65 63 74 6F 72 20 20 20  es per Sector  
1696: 20 20 20 20 20 20 35 31 32 0A 4D 42 20 20 20 20        512.MB   
1712: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                 
1728: 20 20 20 37 36 33 31 39 0A 43 79 6C 69 6E 64 65     76319.Cylinde
1744: 72 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20  rs             
1760: 20 20 31 36 33 38 33 0A 48 65 61 64 73 20 20 20    16383.Heads  
1776: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                 
1792: 20 31 36 0A 08 00 00 00 01 00 00 00 00 74 61 95   16..........ta.
1808: 9F CE 01 00 00 00 00 00 00 00 15 C5 3B A3 C7 01  ............;...
1824: 00 00 00 00 00 00 00 E6 BA 43 A9 C5 01 00 00 00  .........C......
1840: 00 00 FF EF 67 A9 C8 01 00 00 00 39 80 64 2E 00  ....g......9.d..
1856: 00 00 00 0B 37 24 B3 C9 01 00 00 00 00 82 4B A1  ....7$........K.
1872: 12 00 00 00 8A 74 B1 BB C8 01 00 00 00 00 00 00  .....t..........
1888: 00 00 00 00 00 67 C3 3A 70 04 00 00 F1 00 00 00  .....g.:p.......
1904: A1 00 00 00 E3 00 00 00 00 00 00 00 4C 61 73 74  ............Last
1920: 20 4C 46 4F 20 42 75 66 66 65 72 73 69 7A 65 20   LFO Buffersize
1936: 3A 20 33 32 37 36 38 0A 4C 61 73 74 20 4C 46 4F  : 32768.Last LFO
1952: 20 50 61 74 68 20 20 20 20 20 20 20 3A 20 0A 20   Path       : .
1968: 20 46 75 6C 6C 20 50 61 74 68 20 20 20 20 20 20   Full Path     
1984: 20 20 20 3A 20 7A 3A 5C 44 41 54 41 5C 49 54 5C     : z:\DATA\IT\
2000: 49 4D 41 47 45 53 5C 55 33 33 30 5C 55 33 33 30  IMAGES\U330\U330
2016: 2E 47 48 4F 0A 20 20 44 72 69 76 65 20 4C 65 74  .GHO.  Drive Let
2032: 74 65 72 20 20 20 20 20 20 3A 20 7A 3A 5C 20 0A  ter      : z:\ .
Image Devices
Key[1]   1.1:
Key[2]   1:1
Key[3]   C:
Path     C:
Desc     C: 1.1: []
Type     FAT
Disk     0
Offset   63
Key[1]   A:
Path     A:
Desc     A:
Type     Floppy
Key[1]   Z:
Path     Z:
Desc     Z:
Type     Network
Key[1]   @CD-R1
Path     @CD-R1
Desc     @CD-R1 LITEON  CD-ROM LTN486S 
Type     CD

ConvMemoryAllocationFactoryDpmi diagnostic...
=============================================
Conventional Memory
Initial Conventional Memory Size = 201424
Current Conventional Memory Size = 64224
Allocated
   1024 DpmiDjgpp.cpp:56
  33504 ghost.cpp:1396
     64 DiskDriveAccessExInt13.cpp:139
     48 DiskDriveAccessExInt13.cpp:139
    528 IdeDmaServerPci.cpp:127
    528 IdeDmaServerPci.cpp:127
    528 IdeDmaServerPci.cpp:127
    528 IdeDmaServerPci.cpp:127
Free
    512 DiskDriveAccessInt13.cpp:184
     48 MsdosLfoFilesystem.cpp:412
   1024 DiskDriveAccessInt13.cpp:184
   2048 DiskDriveAccessInt13.cpp:184
  32768 AlignBufferedImageFileDevice.cpp:89
  32768 djdisk.cpp:332
   4096 MsdosFile.cpp:368
  16384 MsdosFile.cpp:368

DiskManager diagnostic...
=========================
Fixed Drives
Drive 128
Int 13h (Active)
Total Sectors            4016250
Bytes per Sector         512
MB                       1961
Cylinders                250
Heads                    255
Sectors per Track        63
Successful IO Count      23
Extended Int 13h
Total Sectors            4030464
Bytes per Sector         512
MB                       1968
Cylinders                7872
Heads                    16
Sectors per Track        32
Successful IO Count      0
Drive 129 ST380011A 5JV3W3YY
Int 13h
Total Sectors            15467760
Bytes per Sector         512
MB                       7552
Cylinders                1023
Heads                    240
Sectors per Track        63
Successful IO Count      0
Extended Int 13h
Total Sectors            156301488
Bytes per Sector         512
MB                       76319
Successful IO Count      0
IDE using PIO
Total Sectors            156301488
Bytes per Sector         512
MB                       76319
Cylinders                16383
Heads                    16
Sectors per Track        63
Successful IO Count      0
IDE using UDMA (Active)
Total Sectors            156301488
Bytes per Sector         512
MB                       76319
Cylinders                16383
Heads                    16
Sectors per Track        63
Successful IO Count      144
Floppy Drives
Drive 0
Int 13h (Active)
Total Sectors            2880
Bytes per Sector         512
MB                       1
Cylinders                80
Heads                    2
Sectors per Track        18
Successful IO Count      1

FilesystemManager diagnostic...
===============================
Volume 1
VolumePos: 1.1:
DriveLetter: C:
Description:    1.91GB Primary Disk 0 Offset   31.50KB    1.91GB
Type:        fsfFat16
Name:       
Volume 2
VolumePos: 2.1:
DriveLetter:
Description:   74.53GB Primary Disk 1 Offset   31.50KB   74.53GB ST380011A 5JV3W3YY
Volume Inaccessible

FilesystemMounter diagnostic...
===============================

LfoFilesystemManager diagnostic...
==================================
Filesystem Index: 0
Filesystem Descriptor:
  ID's:
    ID Type: 2
    ID: A:
  DriveType: 2
  No FilesystemInfo structure.
  Filesystem has no VolumePtr
Filesystem Index: 1
Filesystem Descriptor:
  ID's:
    ID Type: 2
    ID: C:
    ID Type: 1
    ID: 1.1:
  DriveType: 4
  FilesystemInfo:
    formatType: 2
    volumeName:
Filesystem Index: 2
Filesystem Descriptor:
  ID's:
    ID Type: 2
    ID: Z:
  DriveType: 16
  No FilesystemInfo structure.
  Filesystem has no VolumePtr
Filesystem Index: 3
Filesystem Descriptor:
  ID's:
    ID Type: 1
    ID: 2.1:
  DriveType: 4
  FilesystemInfo:
    formatType: 8
    volumeName:
  Filesystem is inaccessible.

*********************************
Nigel Bree's picture

I cover the known cause (and a possible solution for) error 10008 in this post, where there's a link to a tool that may help.

What isn't clear is exactly why this has happened - what process did you use to take the image in the first place?

phonewatch's picture

I created the image using the Drive Mapping Boot Package in Ghost Boot Wizard using the usb option.
The image itself is only one file which is approx 760mb.
It is just a basic windows xp install with no applications/software installed.
The image creates ok.(there is no error messages appearing up).
However when i run that optio to check the image in ghost, i get end of file error.
and obviously when i try to deploy the image it get the same error message.
 
I opened the .gho file in ghost explorer and it opened fine.
I then compiled the file with a different name and got the same error message:end of file error.
 
I had a look at your posting about the fix.
Can i use that ntexact switch?will that make any difference?
 
Nigel Bree's picture

The posting I wrote applies to the normal case of spanned images, but if the image is unspanned then it won't apply to this case. Ghost thinks the image file is simply truncated for some reason. In the GHOSTERR.TXT, the error said:

DumpFile            : Z:\DATA\IT\IMAGES\U330\U330.GHO
DumpPos : 201752576


which means that Ghost has encountered the end of the image file at around 200Mb. Hence, my assumption that we were looking at a spanning situation.

However, in this case it seems more likely that something - it's hard to tell whether on the file server or client - is interfering with Ghost reading the image data and is breaking the network access to the file at that position.

However, it's a good idea to verify the Ghost image properly. Being able to open it with Ghost Explorer is good, but Explorer and Ghost process the images quite different so it's not a thorough test. To verify the image completely, you should use Ghost32 instead and run an image verify on the image. It's best to do this on the machine that is hosting the image (so that there's as little as possible getting in the way, and in particular no network file sharing involved).

If Ghost32 can do an image verify, then the image is good and then it's likely that the network file sharing you're using to access the image is failing for some reason. But if Ghost32 fails, then the image itself is bad. That's the first test to run.

phonewatch's picture

I ran the ghost23.exe on the image file and it passed the integrity check ok!
so what does this mean?
 
phonewatch's picture

the image is located on a NAS device on the network.
 
Nigel Bree's picture

Well, since the image itself is fine, the most likely situation is that the implementation of the file sharing protocol in the NAS box and the implementation in the Ghost boot environment (supplied by either IBM for PC-DOS or Microsoft for MS-DOS boot disks) just don't like each other.

[ It's also a remote possibility that the client machine's network drivers, or an interaction involving them are part of the issue, but that seems less likely. ]

What to do about it depends on what the root cause is, which is really a matter of trial and error. You can try, for instance, building a Windows PE boot disk and use Ghost32 instead - the file sharing in Windows is much more robust that the old Lan Manager code used by the DOS boot disks - or perhaps a Windows-hosted file share will work better than your NAS box. It's going to be a matter of experimenting to find a combination that works.

duftopia's picture

Ghost 2003 for .GHO files!

     Just a note, I called symantec concerning this issue and they indicated that Ghost 2003 had to be used to restore this type of file.

      As I expected that did not work, I will probably be moving the customer to acronis or avanquest instead of ungrading them to the newer version of Ghost.  - I simply cannot afford this type of fisaco:

     The latest message when running ghost 2003 to recover is "An internal consistancy has been detected ....call symantec".

     Any body have any additional suggestions please tell me, the father will not be pleased that he lost his data and lectures because I trusted symantec in 2003

ps: symantec no longer supports this version for free!