Copyright (c) Hyperion Entertainment and contributors.
Revision 2 + 3
Revision 4
Revision 5
Revision 6