{   // Book of Minor Magic
    SPELL_MAGIC_DART,
    SPELL_BLINK,
    SPELL_CALL_IMP,
    SPELL_REPEL_MISSILES,
    SPELL_SLOW,
    SPELL_CONJURE_FLAME,
    SPELL_MEPHITIC_CLOUD,
    SPELL_NO_SPELL,
},

{   // Book of Conjurations
    SPELL_MAGIC_DART,
    SPELL_SEARING_RAY,
    SPELL_DAZZLING_SPRAY,
    SPELL_FULMINANT_PRISM,
    SPELL_ISKENDERUNS_MYSTIC_BLAST,
    SPELL_BATTLESPHERE,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Flames
    SPELL_FLAME_TONGUE,
    SPELL_THROW_FLAME,
    SPELL_CONJURE_FLAME,
    SPELL_INNER_FLAME,
    SPELL_STICKY_FLAME,
    SPELL_FIREBALL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Frost
    SPELL_FREEZE,
    SPELL_THROW_FROST,
    SPELL_OZOCUBUS_ARMOUR,
    SPELL_THROW_ICICLE,
    SPELL_SUMMON_ICE_BEAST,
    SPELL_CONDENSATION_SHIELD,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Summonings
    SPELL_ABJURATION,
    SPELL_RECALL,
    SPELL_SUMMON_ELEMENTAL,
    SPELL_SHADOW_CREATURES,
    SPELL_SUMMON_DEMON,
    SPELL_MONSTROUS_MENAGERIE,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Fire
    SPELL_FIRE_BRAND,
    SPELL_IGNITE_POISON,
    SPELL_FIREBALL,
    SPELL_BOLT_OF_FIRE,
    SPELL_DELAYED_FIREBALL,
    SPELL_RING_OF_FLAMES,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Ice
    SPELL_FREEZING_AURA,
    SPELL_ENGLACIATION,
    SPELL_OZOCUBUS_REFRIGERATION,
    SPELL_BOLT_OF_COLD,
    SPELL_FREEZING_CLOUD,
    SPELL_SIMULACRUM,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Spatial Translocations
    SPELL_APPORTATION,
    SPELL_BLINK,
    SPELL_SHROUD_OF_GOLUBRIA,
    SPELL_PORTAL_PROJECTILE,
    SPELL_TELEPORT_OTHER,
    SPELL_GOLUBRIAS_PASSAGE,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Enchantments
    SPELL_CAUSE_FEAR,
    SPELL_SILENCE,
    SPELL_TUKIMAS_DANCE,
    SPELL_DEFLECT_MISSILES,
    SPELL_HASTE,
    SPELL_DISCORD,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Young Poisoner's Handbook
    SPELL_STING,
    SPELL_CURE_POISON,
    SPELL_MEPHITIC_CLOUD,
    SPELL_OLGREBS_TOXIC_RADIANCE,
    SPELL_VENOM_BOLT,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of the Tempests
    SPELL_DISCHARGE,
    SPELL_LIGHTNING_BOLT,
    SPELL_FIREBALL,
    SPELL_TORNADO,
    SPELL_SHATTER,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Death
    SPELL_CORPSE_ROT,
    SPELL_SUBLIMATION_OF_BLOOD,
    SPELL_AGONY,
    SPELL_DISPEL_UNDEAD,
    SPELL_EXCRUCIATING_WOUNDS,
    SPELL_BOLT_OF_DRAINING,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Hinderance
    SPELL_CONFUSING_TOUCH,
    SPELL_CONFUSE,
    SPELL_PETRIFY,
    SPELL_LEDAS_LIQUEFACTION,
    SPELL_ENGLACIATION,
    SPELL_SUMMON_MANA_VIPER,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Changes
    SPELL_BEASTLY_APPENDAGE,
    SPELL_STICKS_TO_SNAKES,
    SPELL_SPIDER_FORM,
    SPELL_ICE_FORM,
    SPELL_BLADE_HANDS,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Transfigurations
    SPELL_STONESKIN,
    SPELL_ICE_FORM,
    SPELL_STATUE_FORM,
    SPELL_DRAGON_FORM,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of War Chants
    SPELL_FIRE_BRAND,
    SPELL_FREEZING_AURA,
    SPELL_SHROUD_OF_GOLUBRIA,
    SPELL_REPEL_MISSILES,
    SPELL_POISON_WEAPON,
    SPELL_REGENERATION,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},
#if TAG_MAJOR_VERSION > 34
{   // Book of Battle
    SPELL_INFUSION,
    SPELL_SHROUD_OF_GOLUBRIA,
    SPELL_SONG_OF_SLAYING,
    SPELL_SPECTRAL_WEAPON,
    SPELL_REGENERATION,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},
#endif
{   // Book of Clouds
    SPELL_MEPHITIC_CLOUD,
    SPELL_CONJURE_FLAME,
    SPELL_POISONOUS_CLOUD,
    SPELL_FREEZING_CLOUD,
    SPELL_RING_OF_FLAMES,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Necromancy
    SPELL_PAIN,
    SPELL_ANIMATE_SKELETON,
    SPELL_LETHAL_INFUSION,
    SPELL_VAMPIRIC_DRAINING,
    SPELL_REGENERATION,
    SPELL_ANIMATE_DEAD,
    SPELL_CONTROL_UNDEAD,
    SPELL_NO_SPELL,
},

{   // Book of Callings
    SPELL_SUMMON_SMALL_MAMMAL,
    SPELL_CALL_IMP,
    SPELL_CALL_CANINE_FAMILIAR,
    SPELL_SUMMON_GUARDIAN_GOLEM,
    SPELL_SUMMON_LIGHTNING_SPIRE,
    SPELL_SUMMON_ICE_BEAST,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Maledictions
    SPELL_CORONA,
    SPELL_SURE_BLADE,
    SPELL_HIBERNATION,
    SPELL_CONFUSE,
    SPELL_ENSLAVEMENT,
    SPELL_INVISIBILITY,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Air
    SPELL_SHOCK,
    SPELL_SWIFTNESS,
    SPELL_REPEL_MISSILES,
    SPELL_FLY,
    SPELL_DISCHARGE,
    SPELL_LIGHTNING_BOLT,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of the Sky
    SPELL_FLY,
    SPELL_AIRSTRIKE,
    SPELL_SILENCE,
    SPELL_DEFLECT_MISSILES,
    SPELL_CONJURE_BALL_LIGHTNING,
    SPELL_TORNADO,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of the Warp
    SPELL_CONTROL_TELEPORT,
    SPELL_PHASE_SHIFT,
    SPELL_WARP_BRAND,
    SPELL_SUMMON_FOREST,
    SPELL_DISPERSAL,
    SPELL_CONTROLLED_BLINK,
    SPELL_DISJUNCTION,
    SPELL_NO_SPELL,
},

{   // Book of Envenomations
    SPELL_SPIDER_FORM,
    SPELL_POISON_WEAPON,
    SPELL_INTOXICATE,
    SPELL_OLGREBS_TOXIC_RADIANCE,
    SPELL_POISONOUS_CLOUD,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Unlife
    SPELL_RECALL,
    SPELL_ANIMATE_DEAD,
    SPELL_CONTROL_UNDEAD,
    SPELL_TWISTED_RESURRECTION,
    SPELL_DEATH_CHANNEL,
    SPELL_SIMULACRUM,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Control
    SPELL_CONTROL_TELEPORT,
    SPELL_CONTROL_UNDEAD,
    SPELL_ENSLAVEMENT,
    SPELL_ENGLACIATION,
    SPELL_MASS_CONFUSION,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

#if TAG_MAJOR_VERSION == 34
{   // Book of Battle (replacing Morphology)
    SPELL_INFUSION,
    SPELL_SHROUD_OF_GOLUBRIA,
    SPELL_SONG_OF_SLAYING,
    SPELL_SPECTRAL_WEAPON,
    SPELL_REGENERATION,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},
#endif

{   // Book of Geomancy
    SPELL_SANDBLAST,
    SPELL_STONESKIN,
    SPELL_PASSWALL,
    SPELL_STONE_ARROW,
    SPELL_PETRIFY,
    SPELL_LRD,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Earth
    SPELL_LEDAS_LIQUEFACTION,
    SPELL_BOLT_OF_MAGMA,
    SPELL_STATUE_FORM,
    SPELL_IRON_SHOT,
    SPELL_SHATTER,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Wizardry
    SPELL_SUMMON_ELEMENTAL,
    SPELL_AGONY,
    SPELL_FORCE_LANCE,
    SPELL_HASTE,
    SPELL_INVISIBILITY,
    SPELL_SPELLFORGED_SERVITOR,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Power
    SPELL_FULMINANT_PRISM,
    SPELL_ISKENDERUNS_MYSTIC_BLAST,
    SPELL_VENOM_BOLT,
    SPELL_BOLT_OF_MAGMA,
    SPELL_IRON_SHOT,
    SPELL_IOOD,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Cantrips
    SPELL_CONFUSING_TOUCH,
    SPELL_ANIMATE_SKELETON,
    SPELL_SUMMON_SMALL_MAMMAL,
    SPELL_APPORTATION,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Party Tricks
    SPELL_SUMMON_BUTTERFLIES,
    SPELL_APPORTATION,
    SPELL_BLINK,
    SPELL_INTOXICATE,
    SPELL_TUKIMAS_DANCE,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

#if TAG_MAJOR_VERSION == 34
{   // Book of Stalking
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},
#endif

{   // Book of Debilitation
    SPELL_CORONA,
    SPELL_SLOW,
    SPELL_INNER_FLAME,
    SPELL_ENSLAVEMENT,
    SPELL_CAUSE_FEAR,
    SPELL_LEDAS_LIQUEFACTION,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of the Dragon
    SPELL_FLY,
    SPELL_CAUSE_FEAR,
    SPELL_BOLT_OF_FIRE,
    SPELL_DRAGON_FORM,
    SPELL_DRAGON_CALL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Burglary
    SPELL_APPORTATION,
    SPELL_SWIFTNESS,
    SPELL_PASSWALL,
    SPELL_GOLUBRIAS_PASSAGE,
    SPELL_LRD,
    SPELL_DARKNESS,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Dreams
    SPELL_HIBERNATION,
    SPELL_FLY,
    SPELL_PHASE_SHIFT,
    SPELL_SHADOW_CREATURES,
    SPELL_MASS_CONFUSION,
    SPELL_DARKNESS,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Alchemy
    SPELL_LETHAL_INFUSION,
    SPELL_SUBLIMATION_OF_BLOOD,
    SPELL_CONDENSATION_SHIELD,
    SPELL_PETRIFY,
    SPELL_IGNITE_POISON,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Beasts
    SPELL_SUMMON_BUTTERFLIES,
    SPELL_CALL_CANINE_FAMILIAR,
    SPELL_SUMMON_ICE_BEAST,
    SPELL_SUMMON_MANA_VIPER,
    SPELL_MONSTROUS_MENAGERIE,
    SPELL_SUMMON_HYDRA,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Book of Annihilations
    SPELL_POISON_ARROW,
    SPELL_CHAIN_LIGHTNING,
    SPELL_LEHUDIBS_CRYSTAL_SPEAR,
    SPELL_GLACIATE,
    SPELL_FIRE_STORM,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Grand Grimoire
    SPELL_AURA_OF_ABJURATION,
    SPELL_FORCEFUL_DISMISSAL,
    SPELL_HAUNT,
    SPELL_SUMMON_GREATER_DEMON,
    SPELL_MALIGN_GATEWAY,
    SPELL_SUMMON_HORRIBLE_THINGS,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Necronomicon
    SPELL_HAUNT,
    SPELL_BORGNJORS_REVIVIFICATION,
    SPELL_DEATHS_DOOR,
    SPELL_NECROMUTATION,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

// Rods - start at NUM_FIXED_BOOKS.

{   // Lightning rod
    SPELL_THUNDERBOLT,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Rod of the swarm
    SPELL_SUMMON_SWARM,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Rod of ignition
    SPELL_EXPLOSIVE_BOLT,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Rod of clouds
    SPELL_CLOUD_CONE,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Rod of destruction
    SPELL_RANDOM_BOLT,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Rod of inaccuracy
    SPELL_BOLT_OF_INACCURACY,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

#if TAG_MAJOR_VERSION == 34
{   // Rod of warding
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},
#endif

{   // Rod of shadows
    SPELL_WEAVE_SHADOWS,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

{   // Rod of striking
    SPELL_MELEE,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},

#if TAG_MAJOR_VERSION == 34
{   // Rod of venom
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
    SPELL_NO_SPELL,
},
#endif
