public FringerSpecialization()
        {
            SpecName = "Fringer";
            SpecCareer = BaseEotECareer.EotECareers.EXPLORER;
            SpecSkills = new List<BaseEotECareer.EotESkills> { BaseEotECareer.EotESkills.ASTROGATION, BaseEotECareer.EotESkills.COORDINATION, BaseEotECareer.EotESkills.NEGOTIATION, BaseEotECareer.EotESkills.STREETWISE };
            SpecDescription = "Discovering Possibilities\n\nPart negotiator, part astrogator, and savvy in the ways of the galaxy beyond the " +
                              "Core Worlds, the Fringer is a jack-of-all-trades. He focuses on knowing how to find what he needs and how to get " +
                              "where he needs to go. He's got the gift of gab when it's time to talk, and the awareness and reflexes to maneuver " +
                              "away when it's time to run.";

            /* Talent Tree */
            TalentA1 = new GalaxyMapperTalent(true, 5);
            TalentA2 = new StreetSmartsTalent(true, 5);
            TalentA3 = new RapidRecoveryTalent(true, 5);
            TalentA4 = new StreetSmartsTalent(true, 5);
            TalentB1 = new SkilledJockeyTalent(new List<BaseEotETalent> { TalentA1 }, 10);
            TalentB2 = new GalaxyMapperTalent(new List<BaseEotETalent> { TalentB1, TalentC2 }, 10);
            TalentB3 = new GritTalent(new List<BaseEotETalent> { TalentA3, TalentB4 }, 10);
            TalentB4 = new ToughenedTalent(new List<BaseEotETalent> { TalentA4, TalentB3 }, 10);
            TalentC1 = new MasterStarhopperTalent(new List<BaseEotETalent> { TalentB1, TalentC2 }, 15);
            TalentC2 = new DefensiveDrivingTalent(new List<BaseEotETalent> { TalentB2, TalentC1 }, 15);
            TalentC3 = new RapidRecoveryTalent(new List<BaseEotETalent> { TalentB3 }, 15);
            TalentC4 = new DurableTalent(new List<BaseEotETalent> { TalentB4 }, 15);
            TalentD1 = new RapidRecoveryTalent(new List<BaseEotETalent> { TalentD2, TalentE1 }, 20);
            TalentD2 = new JumpUpTalent(new List<BaseEotETalent> { TalentD3 }, 20);
            TalentD3 = new GritTalent(new List<BaseEotETalent> { TalentC3 }, 20);
            TalentD4 = new KnockdownTalent(new List<BaseEotETalent> { TalentC4 }, 20);
            TalentE1 = new DedicationTalent(new List<BaseEotETalent> { TalentD1, TalentE2 }, 25);
            TalentE2 = new ToughenedTalent(new List<BaseEotETalent> { TalentD2, TalentE1 }, 25);
            TalentE3 = new DodgeTalent(new List<BaseEotETalent> { TalentE4 }, 25);
            TalentE4 = new DodgeTalent(new List<BaseEotETalent> { TalentD4 }, 25);

            TalentMatrix = new List<List<BaseEotETalent>> { new List<BaseEotETalent> { TalentA1, TalentA2, TalentA3, TalentA4 },
                                                            new List<BaseEotETalent> { TalentB1, TalentB2, TalentB3, TalentB4 },
                                                            new List<BaseEotETalent> { TalentC1, TalentC2, TalentC3, TalentC4 },
                                                            new List<BaseEotETalent> { TalentD1, TalentD2, TalentD3, TalentD4 },
                                                            new List<BaseEotETalent> { TalentE1, TalentE2, TalentE3, TalentE4 }
                                                          };
        }
        public AssassinSpecialization()
        {
            SpecName = "Assassin";
            SpecCareer = BaseEotECareer.EotECareers.BOUNTYHUNTER;
            SpecSkills = new List<BaseEotECareer.EotESkills> { BaseEotECareer.EotESkills.MELEE, BaseEotECareer.EotESkills.RANGEDHEAVY, BaseEotECareer.EotESkills.SKULDUGGERY, BaseEotECareer.EotESkills.STEALTH };
            SpecDescription = "Instrument of Policy\n\nWheras most Bounty Hunters focus primarily on the capture of quarry, those " +
                              "who specialize as Assassins are generally tasked with the straightforward proposition of terminating " +
                              "their targets. Assassins tend to prefer getting in quietly, taking out targets (either up close or " +
                              "sniping from afar), and leaving just as silently as they entered. Their talents are very appropriate " +
                              "for this kind of work.";

            /* Talent Tree */
            TalentA1 = new GritTalent(true, 5);
            TalentA2 = new LethalBlowsTalent(true, 5);
            TalentA3 = new StalkerTalent(true, 5);
            TalentA4 = new DodgeTalent(true, 5);
            TalentB1 = new PreciseAimTalent(new List<BaseEotETalent> { }, 10);
            TalentB2 = new JumpUpTalent(new List<BaseEotETalent> {  }, 10);
            TalentB3 = new QuickStrikeTalent(new List<BaseEotETalent> {  }, 10);
            TalentB4 = new QuickDrawTalent(new List<BaseEotETalent> {  }, 10);
            TalentC1 = new TargetedBlowTalent(new List<BaseEotETalent> {  }, 15);
            TalentC2 = new StalkerTalent(new List<BaseEotETalent> {  }, 15);
            TalentC3 = new LethalBlowsTalent(new List<BaseEotETalent> {  }, 15);
            TalentC4 = new AnatomyLessonsTalent(new List<BaseEotETalent> {  }, 15);
            TalentD1 = new StalkerTalent(new List<BaseEotETalent> {  }, 20);
            TalentD2 = new SniperShotTalent(new List<BaseEotETalent> {  }, 20);
            TalentD3 = new DodgeTalent(new List<BaseEotETalent> {  }, 20);
            TalentD4 = new LethalBlowsTalent(new List<BaseEotETalent> {  }, 20);
            TalentE1 = new PreciseAimTalent(new List<BaseEotETalent> {  }, 25);
            TalentE2 = new DeadlyAccuracyTalent(new List<BaseEotETalent> {  }, 25);
            TalentE3 = new DedicationTalent(new List<BaseEotETalent> {  }, 25);
            TalentE4 = new MasterOfShadowsTalent(new List<BaseEotETalent> {  }, 25);

            TalentB1.ParentTalents = new List<BaseEotETalent> { TalentA1, TalentB2, TalentC1 };
            TalentB2.ParentTalents = new List<BaseEotETalent> { TalentA2, TalentB1, TalentB3, TalentC2 };
            TalentB3.ParentTalents = new List<BaseEotETalent> { TalentA3, TalentB2, TalentB4, TalentC3 };
            TalentB4.ParentTalents = new List<BaseEotETalent> { TalentA4, TalentB3 };
            TalentC1.ParentTalents = new List<BaseEotETalent> { TalentB1, TalentD1 };
            TalentC2.ParentTalents = new List<BaseEotETalent> { TalentB2, TalentC3, TalentD2 };
            TalentC3.ParentTalents = new List<BaseEotETalent> { TalentB3, TalentC2 };
            TalentC4.ParentTalents = new List<BaseEotETalent> { TalentB4 };
            TalentD1.ParentTalents = new List<BaseEotETalent> { TalentC1, TalentD2 };
            TalentD2.ParentTalents = new List<BaseEotETalent> { TalentC2, TalentD1 };
            TalentD3.ParentTalents = new List<BaseEotETalent> { TalentC3 };
            TalentD4.ParentTalents = new List<BaseEotETalent> { TalentC4 };
            TalentE1.ParentTalents = new List<BaseEotETalent> { TalentD1 };
            TalentE2.ParentTalents = new List<BaseEotETalent> { TalentD2 };
            TalentE3.ParentTalents = new List<BaseEotETalent> { TalentD3 };
            TalentE4.ParentTalents = new List<BaseEotETalent> { TalentD4 };

            TalentA1.ChildTalents = new List<BaseEotETalent> { TalentB1 };
            TalentA2.ChildTalents = new List<BaseEotETalent> { TalentB2 };
            TalentA3.ChildTalents = new List<BaseEotETalent> { TalentB3 };
            TalentA4.ChildTalents = new List<BaseEotETalent> { TalentB4 };
            TalentB1.ChildTalents = new List<BaseEotETalent> { TalentB2, TalentC1 };
            TalentB2.ChildTalents = new List<BaseEotETalent> { TalentB1, TalentB3, TalentC2 };
            TalentB3.ChildTalents = new List<BaseEotETalent> { TalentB2, TalentB4, TalentC3 };
            TalentB4.ChildTalents = new List<BaseEotETalent> { TalentB3, TalentC4 };
            TalentC1.ChildTalents = new List<BaseEotETalent> { TalentD1 };
            TalentC2.ChildTalents = new List<BaseEotETalent> { TalentC3, TalentD2 };
            TalentC3.ChildTalents = new List<BaseEotETalent> { TalentC2, TalentD3 };
            TalentC4.ChildTalents = new List<BaseEotETalent> { TalentD4 };
            TalentD1.ChildTalents = new List<BaseEotETalent> { TalentD2, TalentE1 };
            TalentD2.ChildTalents = new List<BaseEotETalent> { TalentD1, TalentE2 };
            TalentD3.ChildTalents = new List<BaseEotETalent> { TalentE3 };
            TalentD4.ChildTalents = new List<BaseEotETalent> { TalentE4 };
            TalentE1.ChildTalents = new List<BaseEotETalent> { };
            TalentE2.ChildTalents = new List<BaseEotETalent> { };
            TalentE3.ChildTalents = new List<BaseEotETalent> { };
            TalentE4.ChildTalents = new List<BaseEotETalent> { };

            TalentMatrix = new List<List<BaseEotETalent>> { new List<BaseEotETalent> { TalentA1, TalentA2, TalentA3, TalentA4 },
                                                            new List<BaseEotETalent> { TalentB1, TalentB2, TalentB3, TalentB4 },
                                                            new List<BaseEotETalent> { TalentC1, TalentC2, TalentC3, TalentC4 },
                                                            new List<BaseEotETalent> { TalentD1, TalentD2, TalentD3, TalentD4 },
                                                            new List<BaseEotETalent> { TalentE1, TalentE2, TalentE3, TalentE4 }
                                                          };
        }
        public ThiefSpecialization()
        {
            SpecName = "Thief";
            SpecCareer = BaseEotECareer.EotECareers.SMUGGLER;
            SpecSkills = new List<BaseEotECareer.EotESkills> { BaseEotECareer.EotESkills.COMPUTERS, BaseEotECareer.EotESkills.SKULDUGGERY, BaseEotECareer.EotESkills.STEALTH, BaseEotECareer.EotESkills.VIGILANCE };
            SpecDescription = "A Galaxy of Treasures\n\nWhere the Scoundrel is a bit flashier, and the Pilot focuses on mastering his ship, the " +
                              "Thief really is a covert operative. His ideal circumstance is to get into places blocked to others, grab things he's " +
                              "not supposed to have, and get out without anyone ever knowing he was there. If he can sell what he grabbed for a tidy " +
                              "sum, that makes for a perfect day.";

            /* Talent Tree */
            TalentA1 = new StreetSmartsTalent(true, 5);
            TalentA2 = new BlackMarketContactsTalent(true, 5);
            TalentA3 = new IndistinguishableTalent(true, 5);
            TalentA4 = new BypassSecurityTalent(true, 5);
            TalentB1 = new BlackMarketContactsTalent(new List<BaseEotETalent> { TalentA1, TalentB2, TalentC1 }, 10);
            TalentB2 = new DodgeTalent(new List<BaseEotETalent> { TalentB1, TalentB3, TalentC2 }, 10);
            TalentB3 = new GritTalent(new List<BaseEotETalent> { TalentB2, TalentB4, TalentC3 }, 10);
            TalentB4 = new HiddenStorageTalent(new List<BaseEotETalent> { TalentA4, TalentB3, TalentC4 }, 10);
            TalentC1 = new StalkerTalent(new List<BaseEotETalent> { TalentB1, TalentC2, TalentD1 }, 15);
            TalentC2 = new GritTalent(new List<BaseEotETalent> { TalentB2, TalentC1, TalentC3, TalentD2 }, 15);
            TalentC3 = new RapidReactionTalent(new List<BaseEotETalent> { TalentB3, TalentC2, TalentC4, TalentD3 }, 15);
            TalentC4 = new ShortcutTalent(new List<BaseEotETalent> { TalentB4, TalentC3, TalentD4 }, 15);
            TalentD1 = new BypassSecurityTalent(new List<BaseEotETalent> { TalentC1 }, 20);
            TalentD2 = new NaturalRogueTalent(new List<BaseEotETalent> { TalentC2, TalentD3, TalentE2 }, 20);
            TalentD3 = new StreetSmartsTalent(new List<BaseEotETalent> { TalentC3, TalentD2, TalentD4, TalentE3 }, 20);
            TalentD4 = new JumpUpTalent(new List<BaseEotETalent> { TalentC4, TalentD3 }, 20);
            TalentE1 = new MasterOfShadowsTalent(new List<BaseEotETalent> { TalentD1 }, 25);
            TalentE2 = new DodgeTalent(new List<BaseEotETalent> { TalentD2, TalentE3 }, 25);
            TalentE3 = new IndistinguishableTalent(new List<BaseEotETalent> { TalentD3, TalentE2 }, 25);
            TalentE4 = new DedicationTalent(new List<BaseEotETalent> { TalentD4 }, 25);

            TalentMatrix = new List<List<BaseEotETalent>> { new List<BaseEotETalent> { TalentA1, TalentA2, TalentA3, TalentA4 },
                                                            new List<BaseEotETalent> { TalentB1, TalentB2, TalentB3, TalentB4 },
                                                            new List<BaseEotETalent> { TalentC1, TalentC2, TalentC3, TalentC4 },
                                                            new List<BaseEotETalent> { TalentD1, TalentD2, TalentD3, TalentD4 },
                                                            new List<BaseEotETalent> { TalentE1, TalentE2, TalentE3, TalentE4 }
                                                          };
        }