US5371885A
Expired / Lapsed
US
⏱️ 0.0 years remaining
High performance file system
Assignee: Microsoft Technology Licensing LLC
•
Filing: 1989-08-29
•
Granted: 1994-12-06
•
Expires: 2009-08-29
Abstract
Abstract A system and method for allocating contiguous portions of memory to a file. On or more file nodes are provided for allocating memory to one or more files, and the location of these file nodes is maintained. Within these file nodes, the location of one or more runs of contiguous portions of memory are maintained. These contiguous portions of memory are allocated to a file in accordance with the corresponding file node. In one embodiment, the file nodes can be extended in a binary tree structure of additional nodes each storing locations of runs of contiguous portions of memory.
Inventors
- 👤 James G. Letwin
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-26 07:36
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F3/0602; G06F3/0608; G06F16/00; G06F16/10; G06F16/13; G06F16/17; G06F16/178; G06F16/1794; G06F3/061; G06F3/0628; G06F3/0638; G06F3/0643; G06F3/0668; G06F3/0671; G06F3/0673; G06F3/0674; G11; G11B; G11B20/00; G11B20/10; G11B20/12; G11B20/1217; G11B20/1252; G11B27/00; G11B27/10; G11B27/19; G11B27/28; G11B27/32; G11B27/327; G11B27/329; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953; Y10S707/99956
Claims Analysis
Total Claims: 80
Claim 1
Independent Claim
113 words
A method in a computer system for tracking allocations of memory, the memory comprising a plurality of bands, each band comprising a plurality of sectors, each sector comprising a plurality of memory locations, the method comprising the steps of: allocating a bitmap for each of the plurality of bands, each bitmap having a bit for each sector within the band; when allocating a sector of memory, setting a bit in the bitmap of the band that contains the sector to indicate that the sector is allocated; and when deallocating a sector of memory, setting a bit in the bitmap of the band that contains the sector to indicate that the sector is deallocated.
Claim 2
Independent Claim
113 words
A method in a computer system for tracking allocations of memory, the memory comprising a plurality of bands, each band comprising a plurality of sectors, each sector comprising a plurality of memory locations, the method comprising the steps of: allocating a bitmap for each of the plurality of bands, each bitmap having a bit for each sector within the band; when allocating a sector of memory, setting a bit in the bitmap of the band that contains the sector to indicate that the sector is allocated; and when deallocating a sector of memory, setting a bit in the bitmap of the band that contains the sector to indicate that the sector is deallocated.
Claim 3
Dependent Claim
32 words
The method of claim 1 wherein the step of allocating a bitmap further includes the step of selecting a portion of memory proximate to each band for the allocation of the bitmap.
Claim 4
Dependent Claim
38 words
The method of claim 1 wherein the step of allocating a bitmap further includes the step of selecting a portion of memory such that bitmaps for pairs of logically contiguous bands are allocated in logically contiguous memory locations.
Claim 5
Dependent Claim
48 words
The method of claim 1 wherein the step of allocating the bitmap further includes the step of selecting a portion of memory at a head or a tail of each band for allocation of the bitmap such that two bitmaps are allocated adjacent memory locations between alternate bands.
Claim 6
Dependent Claim
51 words
The method of claim 3 or 4 including the steps of allocating to one file a group of logically contiguous sectors from two logically contiguous bands and identifying the group of logically contiguous sectors by an indicator of a first sector and an indicator of a last sector in the group.
Claim 7
Independent Claim
140 words
A method in a computer system for tracking the allocation of memory locations to a file, the computer system having a memory with a plurality of memory locations, the method comprising the steps of: allocating memory locations for a file FNODE, the file FNODE having memory locations for storing indicators of variable-length runs of logically contiguous memory locations allocated to the file; allocating a plurality of variable-length runs of logically contiguous memory locations to the file; for each run allocated to the file, setting an indicator in the file FNODE to identify a location and length of the run; and when the number of runs exceeds the capacity of the file FNODE for storing indicators of runs, storing in the file FNODE pointers to portions of memory locations, the portions for storing indicators of the runs allocated to the file.
Claim 8
Independent Claim
140 words
A method in a computer system for tracking the allocation of memory locations to a file, the computer system having a memory with a plurality of memory locations, the method comprising the steps of: allocating memory locations for a file FNODE, the file FNODE having memory locations for storing indicators of variable-length runs of logically contiguous memory locations allocated to the file; allocating a plurality of variable-length runs of logically contiguous memory locations to the file; for each run allocated to the file, setting an indicator in the file FNODE to identify a location and length of the run; and when the number of runs exceeds the capacity of the file FNODE for storing indicators of runs, storing in the file FNODE pointers to portions of memory locations, the portions for storing indicators of the runs allocated to the file.
Claim 9
Independent Claim
109 words
A method in a computer system for tracking the allocation of memory locations to a file, the computer system having a memory with a plurality of memory locations, the method comprising the steps of: allocating memory locations for a file FNODE, the file FNODE having memory locations for storing indicators of variable-length runs of logically contiguous memory locations allocated to the file; allocating a plurality of variable-length runs of logically contiguous memory locations to the file; and for each run allocated to the file, setting an indicator in the file FNODE to identify a location and length of the run wherein the indicators are stored in a tree structure.
Claim 10
Independent Claim
109 words
A method in a computer system for tracking the allocation of memory locations to a file, the computer system having a memory with a plurality of memory locations, the method comprising the steps of: allocating memory locations for a file FNODE, the file FNODE having memory locations for storing indicators of variable-length runs of logically contiguous memory locations allocated to the file; allocating a plurality of variable-length runs of logically contiguous memory locations to the file; and for each run allocated to the file, setting an indicator in the file FNODE to identify a location and length of the run wherein the indicators are stored in a tree structure.
Claim 11
Dependent Claim
13 words
The method of claim 7 wherein the tree structure is a B+ tree.
Claim 12
Dependent Claim
28 words
The method of claim 6 or 8 including the step of increasing the length of a last run of the file to indicate an increase in file size.
Claim 13
Dependent Claim
40 words
The method of claim 6 or 8 including the step of when accessing a logical location within the file, summing the lengths of a plurality of runs of the file to determine the memory location of the logical file location.
Claim 14
Independent Claim
67 words
A method in a computer system of maintaining a directory hierarchy on a file storage device, the method comprising the steps of: for each directory, allocating a directory FNODE, each directory FNODE having a pointer to a directory structure; and allocating a directory structure, the directory structure comprising a plurality of directory entries, each directory entry having a pointer to a file FNODE or a directory FNODE.
Claim 15
Independent Claim
67 words
A method in a computer system of maintaining a directory hierarchy on a file storage device, the method comprising the steps of: for each directory, allocating a directory FNODE, each directory FNODE having a pointer to a directory structure; and allocating a directory structure, the directory structure comprising a plurality of directory entries, each directory entry having a pointer to a file FNODE or a directory FNODE.
Claim 16
Dependent Claim
20 words
The method of claim 11 including the step of organizing the directory structure as a tree structure of directory entries.
Claim 17
Dependent Claim
17 words
The method of claim 12 including the step of organizing the tree structure as a B tree.
Claim 18
Dependent Claim
47 words
The method of claim 11 wherein the file storage device is a disk device, the method including the step of designating a band of memory locations as a directory band wherein the step of allocating a directory structure selects the directory band for allocating the directory structure.
Claim 19
Dependent Claim
25 words
The method of claim 14 wherein the step of designating a directory band designates a directory band near a seek center of the disk device.
Claim 20
Dependent Claim
37 words
The method of claim 11 including the steps of: designating a directory as a root directory; and storing a pointer to the directory FNODE of the root directory at a predefined location on the file storage device.
Claim 21
Independent Claim
222 words
A method in a computer system for organizing files in a hierarchical manner on a storage device, the hierarchy of files comprising a plurality of directories and files, the storage device having a plurality of logically contiguous sectors, each sector having a plurality of logically contiguous locations, the method comprising the steps of: allocating a descriptive block portion of the storage device, the descriptive block portion having a file system information portion and a sector allocation portion, the file system information portion having a pointer to a root directory, the sector allocation portion containing information describing the allocation of the sectors; for each directory, allocating a directory portion of the storage device for storing information relating to the directory, the directory portion having a directory FNODE portion and a directory block portion, the directory FNODE portion containing information describing the directory, the directory block portion containing entries describing each directory and file within the directory; and for each file, allocating a file portion of the storage device for storing information relating to the file, the file portion having a file FNODE portion and a data portion, the file FNODE portion containing information identifying the file and a plurality of run indicators, each run indicator identifying a run of a plurality of logically contiguous locations, the data portion comprising a plurality of runs.
Claim 22
Independent Claim
222 words
A method in a computer system for organizing files in a hierarchical manner on a storage device, the hierarchy of files comprising a plurality of directories and files, the storage device having a plurality of logically contiguous sectors, each sector having a plurality of logically contiguous locations, the method comprising the steps of: allocating a descriptive block portion of the storage device, the descriptive block portion having a file system information portion and a sector allocation portion, the file system information portion having a pointer to a root directory, the sector allocation portion containing information describing the allocation of the sectors; for each directory, allocating a directory portion of the storage device for storing information relating to the directory, the directory portion having a directory FNODE portion and a directory block portion, the directory FNODE portion containing information describing the directory, the directory block portion containing entries describing each directory and file within the directory; and for each file, allocating a file portion of the storage device for storing information relating to the file, the file portion having a file FNODE portion and a data portion, the file FNODE portion containing information identifying the file and a plurality of run indicators, each run indicator identifying a run of a plurality of logically contiguous locations, the data portion comprising a plurality of runs.
Claim 23
Dependent Claim
55 words
The method of claim 17 wherein the step of allocating a descriptive portion includes the step of allocating the sector allocation portion as a plurality of bitmaps, one bitmap associated with each band of sectors, each bitmap having a bit for each sector within the associated band, the bit indicating allocation status of the sector.
Claim 24
Dependent Claim
36 words
The method of claim 18 wherein the step of allocating the sector allocation portion as a plurality of bitmaps includes the step of allocating the bitmaps such that each bitmap is proximate to the associated band.
Claim 25
Dependent Claim
44 words
The method of claim 18 wherein the step of allocating the sector allocation portion as a plurality of bitmaps includes the step of allocating the bitmaps at a tail or a head of the associated bands such that bitmaps are adjacent between alternate bands.
Claim 26
Dependent Claim
40 words
The method of claim 18 wherein the step of allocating the sector allocation portion as a plurality of bitmaps includes the step of allocating the bitmaps such that the bitmaps for logically contiguous bands are allocated in logically contiguous sectors.
Claim 27
Dependent Claim
61 words
The method of claim 17 wherein the step of allocating a descriptive block portion includes the step of allocating the file system information portion to include a super block portion, the super block portion containing a directory block band pointer, the directory block band pointer pointing to a band of sectors in which directory blocks are stored based on a preference.
Claim 28
Dependent Claim
22 words
The method of claim 22 including the step of allocating the directory block band near a seek center of the storage device.
Claim 29
Dependent Claim
54 words
The method of claim 17 wherein the step of allocating a descriptive block portion includes the step of allocating the file system information portion to include a spare block portion, the spare block portion containing a hot fix map, the hot fix map identifying a good sector as a replacement for a bad sector.
Claim 30
Dependent Claim
42 words
The method of claim 24 including the steps of: when a read request is directed to a bad sector, mapping the bad sector to the good sector based on the hot fix map; and redirecting the read request to the good sector.
Claim 31
Dependent Claim
35 words
The method of claim 17 wherein the step of allocating a directory portion includes the steps of designating a band of sectors as a directory band and allocating the directory portion within the directory band.
Claim 32
Dependent Claim
22 words
The method of claim 26 wherein the step of designating designated a band of sectors near seek center of the storage device.
Claim 33
Dependent Claim
26 words
The method of claim 17 wherein the step of allocating a directory portion includes the step of allocating the directory block portion as a tree structure.
Claim 34
Dependent Claim
19 words
The method of claim 28 wherein the step of allocating the directory block portion as a B tree structure.
Claim 35
Dependent Claim
38 words
The method of claim 17 wherein the step of allocating a descriptive block portion includes the step of allocating the file system information portion to include a boot block portion, the boot block portion containing a bootstrap program.
Claim 36
Dependent Claim
61 words
The method of claim 17 wherein the step of allocating a descriptive block portion includes the step of allocating the file system information portion to include a super block portion, the super block portion containing a bitmap list pointer to a list of bitmap pointers, each bitmap pointer pointing to a bitmap that describes the allocation of a band of sectors.
Claim 37
Dependent Claim
63 words
The method of claim 17 wherein the step of allocating a descriptive block portion includes the step of allocating the file system information portion to include a spare block portion, the spare block portion containing a pointer to a free block list of unallocated sectors for use to ensure sufficient unallocated sector are available for balancing of a B tree hierarchy of directories.
Claim 38
Dependent Claim
35 words
The method of claim 17 wherein the step of allocating a directory portion includes the step of, for each entry in the directory block portion, storing a pointer to a directory FNODE or file FNODE.
Claim 39
Dependent Claim
28 words
The method of claim 17 wherein the step of allocating a file portion includes the step of allocating the plurality of run indicators as a tree directory structure.
Claim 40
Dependent Claim
29 words
The method of claim 17 wherein the step of allocating a file portion includes the step of allocating the plurality of run indicators as a B+ tree directory structure.
Claim 41
Dependent Claim
100 words
A computer system for tracking storage device allocations, comprising: a storage device having a plurality of bands, each band having a plurality of sectors, each sector having a plurality of storage locations; means for allocating a bitmap for each of the plurality of bands, each bitmap having a bit for each sector within the band; means for setting a bit in the bitmap of the band that contains the sector to indicate that the sector is allocated; and means for setting a bit in the bitmap of the band that contains the sector to indicate that the sector is deallocated.
Claim 42
Dependent Claim
100 words
A computer system for tracking storage device allocations, comprising: a storage device having a plurality of bands, each band having a plurality of sectors, each sector having a plurality of storage locations; means for allocating a bitmap for each of the plurality of bands, each bitmap having a bit for each sector within the band; means for setting a bit in the bitmap of the band that contains the sector to indicate that the sector is allocated; and means for setting a bit in the bitmap of the band that contains the sector to indicate that the sector is deallocated.
Claim 43
Dependent Claim
21 words
The system of claim 36 including means for selecting storage locations near to each band for the allocation of the bitmap.
Claim 44
Dependent Claim
27 words
The system of claim 36 including means for selecting storage locations such that bitmaps for pairs of logically contiguous bands are allocated in logically contiguous storage locations.
Claim 45
Dependent Claim
37 words
The system of claim 36 including means for selecting storage locations at a head or a tail of each band for allocation of the bitmap such that two bitmaps are allocated adjacent storage locations between alternate bands.
Claim 46
Dependent Claim
52 words
The system of claim 38 or 39 including means for allocating to one file a group of logically contiguous sectors from two logically contiguous bands and means for identifying the group of logically contiguous sectors by an indicator of a first sector and an indicator of a last sector in the group.
Claim 47
Dependent Claim
85 words
A computer system for maintaining a directory hierarchy, comprising: a file storage device; means for allocating a first directory structure within the file storage device, each first directory having a pointer to a second directory structure; and means for allocating a second directory structure within the file storage device, the second directory structure comprising a plurality of directory entries, each directory entry having an identifier of a file or a directory whereby the first directory structures and the second directory structures form a directory hierarchy.
Claim 48
Dependent Claim
85 words
A computer system for maintaining a directory hierarchy, comprising: a file storage device; means for allocating a first directory structure within the file storage device, each first directory having a pointer to a second directory structure; and means for allocating a second directory structure within the file storage device, the second directory structure comprising a plurality of directory entries, each directory entry having an identifier of a file or a directory whereby the first directory structures and the second directory structures form a directory hierarchy.
Claim 49
Dependent Claim
20 words
The system of claim 41 including means for organizing the second directory structure as a tree structure of directory entries.
Claim 50
Dependent Claim
16 words
The system of claim 42 including means for organizing the tree structure as a B tree.
Claim 51
Dependent Claim
38 words
The system of claim 41 including means for designating a directory as a root directory, and means for storing an identifier of the first directory structure of the root directory at a location on the file storage device.
Claim 52
Dependent Claim
52 words
The system of claim 41, 42, 43, or 44 wherein the file storage device is a disk device, and including means for designating a band of memory locations as a directory band and wherein the means for allocating a second directory structure selects the directory band for allocating the second directory structure.
Claim 53
Dependent Claim
25 words
The system of claim 45 wherein the means for designating a directory band designates a directory band near a seek center of the disk device.
Claim 54
Dependent Claim
130 words
A computer system for tracking the allocation of memory locations to a file, comprising: a memory with a plurality of memory locations; means for allocating memory locations for a file node, the file node having memory locations for storing indicators of variable-length runs of logically contiguous memory locations allocated to the file; means for allocating a plurality of variable-length runs of logically contiguous memory locations to the file; and means for setting an indicator in the file node to identify a location and length of the run; and means for storing in the file node identifiers of portions of memory locations, when the number of runs exceeds the capacity of the file node for storing indicators of runs, the portions for storing indicators of the runs allocated to the file.
Claim 55
Dependent Claim
130 words
A computer system for tracking the allocation of memory locations to a file, comprising: a memory with a plurality of memory locations; means for allocating memory locations for a file node, the file node having memory locations for storing indicators of variable-length runs of logically contiguous memory locations allocated to the file; means for allocating a plurality of variable-length runs of logically contiguous memory locations to the file; and means for setting an indicator in the file node to identify a location and length of the run; and means for storing in the file node identifiers of portions of memory locations, when the number of runs exceeds the capacity of the file node for storing indicators of runs, the portions for storing indicators of the runs allocated to the file.
Claim 56
Dependent Claim
19 words
The system of claim 47 wherein the means for storing the indicators stores the indicators in a B+ tree.
Claim 57
Dependent Claim
97 words
A computer system for tracking the allocation of memory locations to a file, comprising: a memory With a plurality of memory locations; means for allocating memory locations for a file node, the file node having memory locations for storing indicators of variable-length runs of logically contiguous memory locations allocated to the file; means for allocating a plurality of variable-length runs of logically contiguous memory locations to the file; and means for setting an indicator in the file node to identify a location and length of the run; and means for storing the indicators in a tree structure.
Claim 58
Dependent Claim
97 words
A computer system for tracking the allocation of memory locations to a file, comprising: a memory With a plurality of memory locations; means for allocating memory locations for a file node, the file node having memory locations for storing indicators of variable-length runs of logically contiguous memory locations allocated to the file; means for allocating a plurality of variable-length runs of logically contiguous memory locations to the file; and means for setting an indicator in the file node to identify a location and length of the run; and means for storing the indicators in a tree structure.
Claim 59
Dependent Claim
28 words
The system of claim 47, 48, or 49 including means for increasing the length of a last run of the file to indicate an increase in file size.
Claim 60
Dependent Claim
40 words
The system of claim 47, 48, or 49 including means for summing the lengths of a plurality of runs of the file to determine the memory location of the logical file location when accessing a logical location within the file.
Claim 61
Dependent Claim
210 words
A computer system for organizing files in a hierarchical manner, the hierarchy of files comprising a plurality of directories and files, comprising: a storage device having a plurality of logically contiguous sectors, each sector having a plurality of logically contiguous locations; means for allocating a descriptive block portion of the storage device, the descriptive block portion having a file system information portion and a sector allocation portion, the file system information portion having an indicator of a root directory, the sector allocation portion containing information describing the allocation of the sectors; means for allocating a directory portion of the storage device for storing information relating to the directory, the directory portion having a directory node portion and a directory block portion, the directory node portion containing information describing the directory, the directory block portion containing entries describing each directory and file within a directory; and means for allocating a file portion of the storage device for storing information relating to the file, the file portion having a file node portion and a data portion, the file node portion containing information identifying the file and a plurality of run indicators, each run indicator identifying a run of a plurality of logically contiguous locations, the data portion comprising a plurality of runs.
Claim 62
Dependent Claim
210 words
A computer system for organizing files in a hierarchical manner, the hierarchy of files comprising a plurality of directories and files, comprising: a storage device having a plurality of logically contiguous sectors, each sector having a plurality of logically contiguous locations; means for allocating a descriptive block portion of the storage device, the descriptive block portion having a file system information portion and a sector allocation portion, the file system information portion having an indicator of a root directory, the sector allocation portion containing information describing the allocation of the sectors; means for allocating a directory portion of the storage device for storing information relating to the directory, the directory portion having a directory node portion and a directory block portion, the directory node portion containing information describing the directory, the directory block portion containing entries describing each directory and file within a directory; and means for allocating a file portion of the storage device for storing information relating to the file, the file portion having a file node portion and a data portion, the file node portion containing information identifying the file and a plurality of run indicators, each run indicator identifying a run of a plurality of logically contiguous locations, the data portion comprising a plurality of runs.
Claim 63
Dependent Claim
46 words
The system of claim 52 including means for allocating the sector allocation portion as a plurality of bitmaps, one bitmap associated with each band of sectors, each bitmap having a bit for each sector within the associated band, the bit indicating allocation status of the sector.
Claim 64
Dependent Claim
29 words
The system of claim 53 including means for allocating the bitmaps at a tail or a head of the associated bands such that bitmaps are adjacent between alternate bands.
Claim 65
Dependent Claim
21 words
The system of claim 53 including means for allocating the bitmaps such that each bitmap is proximate to the associated band.
Claim 66
Dependent Claim
25 words
The system of claim 53 including means for allocating the bitmaps such that the bitmaps for logically contiguous bands are allocated in logically contiguous sectors.
Claim 67
Dependent Claim
51 words
The system of claim 52 including means for allocating the file system information portion to include a super block portion, the .super block portion containing a directory block band pointer, the directory block band pointer pointing to a band of sectors in which directory blocks are stored based on a preference.
Claim 68
Dependent Claim
21 words
The system of claim 57 including means for allocating the directory block band near a seek center of the storage device.
Claim 69
Dependent Claim
28 words
The system of claim 52 including means for designating a band of sectors as a directory band, and means for allocating the directory portion within the directory band.
Claim 70
Dependent Claim
20 words
The system of claim 59 including means for designating a band of sectors near seek center of the storage device.
Claim 71
Dependent Claim
44 words
The system of claim 52 including means for allocating the file system information portion to include a spare block portion, the spare block portion containing a hot fix map, the hot fix map identifying a good sector as a replacement for a bad sector.
Claim 72
Dependent Claim
43 words
The system of claim 61 including means for: mapping the bad sector to the good sector based on the hot fix map when a read request is directed to a bad sector, and means for redirecting the read request to the good sector.
Claim 73
Dependent Claim
28 words
The system of claim 52 including means for allocating the file system information portion to include a boot block portion, the boot block portion containing a bootstrap program.
Claim 74
Dependent Claim
51 words
The system of claim 52 including means for allocating the file system information portion to include a super block portion, the super block portion containing a bitmap list pointer to a list of bitmap pointers, each bitmap pointer pointing to a bitmap that describes the allocation of a band of sectors.
Claim 75
Dependent Claim
53 words
The system of claim 52 including means for allocating the file system information portion to include a spare block portion, the spare block portion containing a pointer to a free block list of unallocated sectors for use to ensure sufficient unallocated sector are available for balancing of a B tree hierarchy of directories.
Claim 76
Dependent Claim
26 words
The system of claim 52 including means for storing a pointer to a directory node or file node for each entry in the directory block portion.
Claim 77
Dependent Claim
20 words
The system of claim 52 including means for allocating the plurality of run indicators as a B+ tree directory structure.
Claim 78
Dependent Claim
18 words
The system of claim 52 including means for allocating the directory block portion as a B tree structure.
Claim 79
Dependent Claim
19 words
The system of claim 52 including means for allocating the plurality of run indicators as a tree directory structure.
Claim 80
Dependent Claim
17 words
The system of claim 52 including means for allocating the directory block portion as a tree structure.
References Cited (Backward Citations)
US4435752A
Cited
US4468728A
Cited
US4825354A
Cited
US5047918A
Cited
US5034914A
Cited
US4945475A
Cited
US5008820A
Cited
US4953080A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1997-12-05 | 1998-06-06 | 1998-12-06 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2001-12-05 | 2002-06-06 | 2002-12-06 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2005-12-05 | 2006-06-06 | 2006-12-06 | $7700.00 | Window Closed / Lapsed |