1461185969-8a4fbd72-e1c4-4ae3-8f25-de9a1e740b9e

1. A blade server system comprising:
a blade chassis;
a plurality of server blades coupled to the blade chassis;
a power supply system coupled to the blade chassis; and
a chassis management module coupled to the blade chassis, wherein the blade chassis includes electrical and data communication interconnections between the plurality of server blades, the redundant power supply system and the chassis management module, the chassis management module including computer readable media having program instructions for dynamically managing a power supply allocation for each one of the plurality of server blades including program instructions for powering on a selected, previously powered off server blade including:
program instructions for receiving a request for power on in the chassis management module wherein the request is from the selected server blade;
program instructions for calculating a power cap necessary to power on the selected server blade;
program instructions for determining whether to apply a hard power cap or a soft power cap including converting a present hard cap power level for all powered server blades to a soft cap power level when redundant allocated power is available, wherein the soft power cap allows an allocated power level to be exceeded for a selected time duration; and
program instructions for allocating unallocated power to the selected server blade.
2. The system of claim 1, wherein the program instructions for calculating the power cap necessary power on the selected server blade includes program instructions for denying the power on request from the selected server blade when insufficient unallocated power is available.
3. The system of claim 1, wherein the program instructions for calculating the power cap necessary power on the selected server blade includes:
program instructions for selecting a first server blade from the plurality of server blades, wherein the first server blade is presently powered on; and
program instructions for incrementally reducing an allocated power for the first server blade when the first server blade is allocated power greater than a corresponding minimum power requirement for the first server blade.
4. The system of claim 3, wherein the program instructions for incrementally reducing the allocated power for the first server blade includes program instructions for reducing the allocated power by a selected percentage.
5. The system of claim 3, wherein calculating the power cap necessary power on the selected server blade further includes program instructions for selecting a subsequent server blade that is presently powered on and incrementally reducing an allocated power for the subsequent server blade when the subsequent server blade is allocated power greater than a corresponding minimum power requirement for the subsequent server blade.
6. The system of claim 3, wherein incrementally reducing the allocated power for the first server blade when the first server blade is allocated power greater than the corresponding minimum power requirement for the first server blade includes a incremental power cap reduction of a selected number quantity of power.
7. The system of claim 3, wherein the program instructions for selecting the first server blade from the plurality of server blades includes selecting the selected blade according to a priority level corresponding to each one of the plurality of server blades.
8. The system of claim 1, wherein the computer readable media having program instructions for dynamically managing the power supply allocation for each one of the plurality of server blades includes program instructions for determining whether to apply a hard power cap or a soft power cap including program instructions for converting a present hard cap power level for all powered server blades to a soft cap power level when redundant allocated power is available.
9. The system of claim 1, wherein the computer readable media having program instructions for dynamically managing the power supply allocation for each one of the plurality of server blades includes program instructions for reallocating power when a blade powers off including:
program instructions for detecting a previously powered on blade is now powered off; and
program instructions for incrementally increasing power allocated to each one of a plurality of powered on server blades when a present power allocation is not equal to a corresponding maximum power allocation for each of the plurality of powered on server blades.
10. The system of claim 1, wherein the power supply system includes a redundant power supply system including at least two power supplies.
11. A blade server system comprising:
a blade chassis;
a plurality of server blades coupled to the blade chassis;
a redundant power supply system including at least two power supplies coupled to the blade chassis;
a chassis management module coupled to the blade chassis, wherein the blade chassis includes electrical and data communication interconnections between the plurality of server blades, the redundant power supply system and the chassis management module, the chassis management module including computer readable media having program instructions for dynamically managing a power supply allocation for each one of the plurality of server blades includes program instructions for powering on a selected, previously powered off server blade including:
program instructions for receiving a request for power on in the chassis management module wherein the request is from the selected server blade;
program instructions for calculating a power cap necessary power on the selected server blade including:
program instructions for denying the power on request from the selected server blade when insufficient unallocated power is available;
program instructions for selecting a first server blade from the plurality of server blades, wherein the first server blade is presently powered on; and
program instructions for incrementally reducing an allocated power for the first server blade when the first server blade is allocated power greater than a corresponding minimum power requirement for the first server blade;
program instructions for determining whether to apply a hard power cap or a soft power cap including converting a present hard cap power level for all powered server blades to a soft cap power level when redundant allocated power is available, wherein the soft power cap allows an allocated power level to be exceeded for a selected time duration;

program instructions for allocating unallocated power to the selected server blade; and
program instructions for determining whether to apply a hard power cap or a soft power cap including program instructions for converting a present allocated power level for all powered server blades to a hard cap power level when redundant allocated power is not available.
12. A method of dynamically managing power supply allocation for each one of a plurality of server blades in a blade server comprising:
powering on a selected, previously powered off server blade including:
receiving a request for power on in the chassis management module wherein the request is from the selected server blade;
calculating a power cap necessary power on the selected server blade;
determining whether to apply a hard power cap or a soft power cap including converting a present hard cap power level for all powered server blades to a soft cap power level when redundant allocated power is available, wherein the soft power cap allows an allocated power level to be exceeded for a selected time duration; and
allocating unallocated power to the selected server blade.
13. The method of claim 12, further comprising denying the power on request from the selected server blade when insufficient unallocated power is available.
14. The method of claim 12, further comprising selecting a first server blade from the plurality of server blades, wherein the first server blade is presently powered on and reducing an allocated power for the first server blade when the first server blade is allocated power greater than a corresponding minimum power requirement for the first server blade.
15. The method of claim 12, further comprising determining whether to apply a hard power cap or a soft power cap including converting a present allocated power level for all powered server blades to a hard cap power level when redundant allocated power is not available.
16. The method of claim 12, wherein dynamically managing the power supply allocation for each one of the plurality of server blades includes reallocating power when a blade powers off including:
detecting a previously powered on blade is now powered off; and
incrementally increasing power allocated to each one of a plurality of powered on server blades when a present power allocation is not equal to a corresponding maximum power allocation for each of the plurality of powered on server blades.
17. The method of claim 16, wherein incrementally reducing the allocated power for the first server blade includes reducing the allocated power by a selected percentage.
18. The method of claim 16, wherein calculating the power cap necessary power on the selected server blade further includes selecting a subsequent server blade that is presently powered on and incrementally reducing an allocated power for the subsequent server blade when the subsequent server blade is allocated power greater than a corresponding minimum power requirement for the subsequent server blade.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A solar module structure, comprising:
a top encapsulant layer;
a plurality of three-dimensional thin-film solar cells, each thin-film solar cell comprising:
a three-dimensional thin-film solar cell substrate comprising emitter junction regions and doped base regions;
emitter metallization regions; and
base metallization regions;
wherein said three-dimensional thin-film solar cell substrate comprises a plurality of single-aperture unit cells;

a printed circuit board;
a rear encapsulant layer; and
a protective back plate.
2. The solar module structure of claim 1, further comprising a glass layer.
3. The solar module structure of claim 2, wherein said glass layer comprises a separate glass cover.
4. The solar module structure of claim 2, wherein said glass layer comprises a glass-like protective coating formed by a coating method.
5. The solar module structure of claim 1, further comprising a top patterned cell interconnect layer.
6. The solar module structure of claim 1, further comprising a rear patterned cell interconnect layer.
7. The solar module structure of claim 1, wherein said protective back plate comprises a Tedlar protective back plate.
8. The solar module structure of claim 1, wherein each three-dimensional thin-film solar cell further comprises a rear mirror.
9. The solar module structure of claim 8, wherein said rear mirror comprises an integrated rear mirror.
10. The solar module structure of claim 8, wherein said rear mirror comprises a detached rear mirror.
11. The solar module structure of claim 1, wherein each three-dimensional thin-film solar cell further comprises a peripheral cell frame.
12. The solar module structure of claim 11, wherein said peripheral cell frame may be used to produce wrap-through or wrap-around emitter metallization for making contacts to the cell emitter at the bottom of each three-dimensional thin-film solar cell.
13. A method for assembling a solar module structure, comprising:
patterning a frontside and a backside of a double-sided printed circuit board coated with metallic foils according to desired frontside and backside interconnect layouts;
applying a first coating layer to the rear side of a plurality of three-dimensional thin-film solar cells, each three-dimensional thin-film solar cell comprising:
a three-dimensional thin-film solar cell substrate comprising emitter junction regions and doped base regions;
emitter metallization regions; and
base metallization regions;
wherein said three-dimensional thin-film solar cell substrate comprises a plurality of single-aperture unit cells;

placing said plurality of three-dimensional thin-film solar cells on the frontside of said double-sided printed circuit board;
preparing a solar module assembly, comprising:
a glass layer;
a top encapsulant layer;
said plurality of three-dimensional thin-film solar cells on the frontside of said double-sided printed circuit board;
a rear encapsulant layer;
a protective back plate; and

sealing and packaging said solar module assembly.
14. The method for assembling a solar module structure of claim 13, wherein each three-dimensional thin-film solar cell further comprises a rear mirror.
15. The method for assembling a solar module structure of claim 13, further comprising arranging a plurality of said solar module assemblies in series.
16. The method for assembling a solar module structure of claim 13, further comprising arranging a plurality of said solar module assemblies in parallel.
17. The method for assembling a solar module structure of claim 15, further comprising connecting at least one pair of module power output electrical leads.
18. The method for assembling a solar module structure of claim 16, further comprising connecting at least one pair of module power output electrical leads.
19. A solar module structure, comprising:
a top glass plate;
a plurality of three-dimensional thin-film solar cells, each three-dimensional thin-film solar cell comprising:
a three-dimensional thin-film solar cell substrate comprising emitter junction regions and doped base regions;
emitter metallization regions; and
base metallization regions;
wherein said three-dimensional thin-film solar cell substrate comprises a plurality of dual-aperture unit cells;

a rear patterned cell interconnect layer; and
a bottom glass plate.
20. The solar module structure of claim 19, wherein each three-dimensional thin-film solar cell further comprises a peripheral cell frame.
21. A method for assembling a solar module structure, comprising:
applying a rear patterned cell interconnect layer to the rear side of a plurality of three-dimensional thin-film solar cells, each thin-film solar cell comprising:
a three-dimensional thin-film solar cell substrate comprising emitter junction regions and doped base regions;
emitter metallization regions; and
base metallization regions;
wherein said three-dimensional thin-film solar cell substrate comprises a plurality of dual-aperture unit cells;

preparing a solar module assembly, comprising:
a top glass plate;
said plurality of three-dimensional thin-film solar cells with said rear patterned cell interconnect layer applied to the rear side;
a bottom glass plate;

sealing and packaging said solar module assembly.
22. The method for assembling a solar module structure of claim 21, wherein said step of preparing a solar module assembly further comprises preparing a solar module assembly with a frame.
23. The method for assembling a solar module structure of claim 21, wherein each three-dimensional thin-film solar cell further comprises a rear mirror.
24. The method for assembling a solar module structure of claim 21, further comprising arranging a plurality of said solar module assemblies in series.
25. The method for assembling a solar module structure of claim 21, further comprising arranging a plurality of said solar module assemblies in parallel.
26. The method for assembling a solar module structure of claim 24, further comprising connecting at least one pair of module power output electrical leads.
27. The method for assembling a solar module structure of claim 25, further comprising connecting at least one pair of module power output electrical leads.
28. A solar module structure, comprising:
a top protective layer;
a plurality of three-dimensional thin-film solar cells, each thin-film solar cell comprising:
a three-dimensional thin-film solar cell substrate comprising emitter and base regions;
wherein said three-dimensional thin-film solar cell substrate comprises a plurality of unit cells;

a printed circuit board; and
a protective back plate.
29. A solar module structure, comprising:
a top glass plate;
a plurality of three-dimensional thin-film solar cells, each thin-film solar cell comprising:
a three-dimensional thin-film solar cell substrate comprising emitter and base regions;
wherein said three-dimensional thin-film solar cell substrate comprises a plurality of unit cells; and

a bottom glass plate.
30. A solar module structure, comprising:
a top protective layer;
a plurality of three-dimensional thin-film solar cells, each thin-film solar cell comprising:
a three-dimensional thin-film solar cell substrate comprising emitter and base regions;
wherein said three-dimensional thin-film solar cell substrate comprises a plurality of unit cells; and

a bottom protective layer.

1461185957-7de568fd-7592-4c6d-9963-6d1e3720dd53

1. A middle ear prosthesis comprising:
a one piece disk shaped prosthesis comprising a generally circular malleable body including a bore, the body for engaging a tympanic membrane and the bore for receiving a head of a stapes when implanted in a middle ear, wherein the body comprises a ring, a hub and spokes connecting the ring to the hub and wherein the hub comprises a tubular hub having opposite arch shaped notches formed in the tubular hub to align with arches of the stapes.
2. The middle ear prosthesis of claim 1 wherein the body has a height of about 0.5 mm.
3. The middle ear prosthesis of claim 1 wherein the body comprises a titanium body.
4. The middle ear prosthesis of claim 1 wherein the body is cannulated on opposite sides of the bore to provide visibility of the stapes during implantation.
5. The middle ear prosthesis of claim 1 wherein the body has a diameter substantially greater than its thickness to provide the disk shape.
6. The middle ear prosthesis of claim 1 wherein the body has a diameter of about 3.0 mm and a thickness of about 0.5 mm.
7. A middle ear prosthesis comprising:
a body comprising an annular head, a collar, and a plurality of radially extending members connecting the head to the collar, the head for engaging a tympanic membrane and the collar for receiving a head of a stapes when implanted in a middle ear, wherein the collar comprises a tubular hub having opposite arch shaped notches formed in the tubular hub to align with arches of the stapes.
8. The middle ear prosthesis of claim 7 wherein the body comprises a titanium body.
9. The middle ear prosthesis of claim 7 wherein the body is cannulated between the radially extending members to provide visibility of the stapes during implantation.
10. The middle ear prosthesis of claim 7 wherein the plurality of radially extending members comprise a pair of aligned, malleable radially extending members to enable the head to be tilted relative to the collar.
11. The middle ear prosthesis of claim 7 wherein diameter of the head is relatively large compared to height of the collar.
12. The middle ear prosthesis of claim 7 wherein an axis of the collar is perpendicular to a plane of the head.
13. The middle ear prosthesis of claim 7 wherein the body has a diameter substantially greater than its thickness.
14. The middle ear prosthesis of claim 7 wherein the body has a diameter of about 3.0 mm and a thickness of about 0.5 mm.
15. The middle ear prosthesis of claim 1 wherein the collar is substantially coplanar with the head.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method comprising:
storing, in a server connected to a computer network, a plurality of database records, the database records being organized in a hierarchy and including at least two parent records, at least two child records associated with each of the parent records, and at least two grandchild records associated with each of the child records;
storing, by the server, a cost associated with each database record, the cost being independent of the hierarchy, wherein the cost is hashed from a key string for ranking each child in the hierarchical database into an integer value by the server;
receiving, by the server, a request over the computer network from a client to sort the database records based on the costs associated with the database records in either ascending or descending order;
in response to the receiving the request, sorting, by the server, the database records in the either ascending or descending order by:
ranking the parent records in the ascending or descending order based on the costs associated with the database records;
ranking the child records associated with each parent record in the ascending or descending order based on their costs and their associated parent; and
ranking the grandchild records associated with each child record in the ascending or descending order based on their costs and their associated child; and

sending a response message, from the server to the client, the response message being configured to cause a browser of the client to display all of the plurality of database records according to the sorting performed in response to the receiving the request.
2. The method of claim 1 wherein the sorting the database records includes sorting:
a first ranked parent record;
a first ranked child record associated with the first parent record;
grandchild records associated with the first parent record in the ascending or descending order based on their ranking;
subsequent child records associated with the first ranked parent record and grandchild records associated with the subsequent child records based on their rankings; and
subsequent parent records, child records associated with the subsequent parent records, and grandchild records associated with the child records associated with the subsequent parent records based on their rankings
3. The method of claim 1, wherein the method is performed in response to running a software program which calls a class associated with a Java programming language.
4. The method of claim 1, wherein the sorting the database records includes providing the database records with peer rank indexes based on the rankings
5. The method of claim 1, wherein:
the plurality of database records further include great-grandchild records associated with each of the grandchild records; and
the sorting further includes ranking the great-grandchild records associated with each grandchild record based on a cost associated with each great-grandchild record, the cost being independent of the hierarchy and hashed from the key string.
6. The method of claim 1, wherein the sorting includes:
finding a first parent record from among the database records;
finding child records associated with the parent record from among the plurality of database records; and
finding grandchild records associated with each of the child records from among the plurality of database records.
7. The method of claim 1, wherein the response message is configured to cause a graphical user interface (GUI) of the browser of the client to display the plurality of database records according to the sorting performed in response to the receiving the request.
8. The method of claim 1, wherein the receiving the request includes receiving the request in response to a user clicking a sort button on the browser.
9. The method of claim 1, wherein the computer network includes an Internet.
10. The method of claim 1, further comprising storing a unique identification (ID) for each database record.
11. A computer program product for sorting a hierarchical table displayed in a graphical user interface (GUI) of a remote client, the computer program product being tangibly embodied on a computer-readable medium and including executable code that, when executed, is configured to cause a data processing apparatus to:
store, in a computer-readable database of a storage system connected to a computer network, a plurality of database records, the database records being organized in a hierarchy and including at least two parent records, at least two child records associated with each of the parent records, and at least two grandchild records associated with each of the child records;
store a cost associated with each database record, the cost being independent of the hierarchy, wherein the cost is hashed from a key string for ranking each child in the hierarchical database into an integer value by the server;
receive a request over the computer network from the client to sort the database records based on the costs associated with the database records in either ascending or descending order;
in response to the receiving the request, sort the database records in the either ascending or descending order by:
ranking the parent records in the ascending or descending order based on the costs associated with the database records;
ranking the child records associated with each parent record in the ascending or descending order based on their costs and their associated parent; and
ranking the grandchild records associated with each child record in the ascending or descending order based on their costs and their associated child; and

send a response message to the client, the response message being configured to cause the GUI of the client to display the plurality of database records according to the sorting performed in response to the receiving the request.
12. The computer program product of claim 11 wherein the sorting the database records includes sorting:
a first ranked parent record;
a first ranked child record associated with the first parent record;
grandchild records associated with the first parent record in the ascending or descending order based on their ranking;
subsequent child records associated with the first ranked parent record and grandchild records associated with the subsequent child records based on their rankings; and
subsequent parent records, child records associated with the subsequent parent records, and grandchild records associated with the child records associated with the subsequent parent records based on their rankings.
13. The computer program product of claim 11, wherein the computer program product includes a software program written in a Java programming language.
14. The computer program product of claim 11, wherein the sorting the database records includes providing the database records with peer rank indexes based on the rankings.
15. The computer program product of claim 11, wherein:
the plurality of database records further include great-grandchild records associated with each of the grandchild records; and
the sorting further includes ranking the great-grandchild records associated with each grandchild record based on a cost associated with each great-grandchild record, the cost being independent of the hierarchy and hashed from the key string.
16. The computer program product of claim 11, wherein the sorting includes:
finding a first parent record from among the database records;
finding child records associated with the parent record from among the plurality of database records; and
finding grandchild records associated with each of the child records from among the plurality of database records.
17. The computer program product of claim 11, wherein the response message is configured to cause the GUI of the client to display the plurality of database records according to the sorting performed in response to the receiving the request.
18. The computer program product of claim 11, wherein the receiving the request includes receiving the request in response to a user clicking a sort button on the browser.
19. The computer program product of claim 11, wherein the computer network includes an Internet.
20. The computer program product of claim 11, wherein the computer program product is further configured to store a unique identification (ID) for each database record.