public void applyCareer(Human actor) {
    subject = actor ;
    applyBackgrounds(actor) ;
    //
    //  We top up basic attributes to match.
    actor.traits.initDNA(0) ;
    actor.health.setupHealth(
      Visit.clamp(Rand.avgNums(2), 0.26f, 0.94f),
      1, 0
    ) ;
    //
    //  For now, we apply gender at random, though this might be tweaked a bit
    //  later.  We also assign some random personality and/or physical traits.
    while (true) {
      final int numP = actor.traits.personality().size() ;
      if (numP >= 5) break ;
      final Trait t = (Trait) Rand.pickFrom(PERSONALITY_TRAITS) ;
      actor.traits.incLevel(t, Rand.range(-2, 2)) ;
      if (numP >= 3 && Rand.yes()) break ;
    }
    actor.traits.incLevel(HANDSOME, Rand.rangeAvg(-2, 2, 2)) ;
    actor.traits.incLevel(TALL    , Rand.rangeAvg(-2, 2, 2)) ;
    actor.traits.incLevel(STOUT   , Rand.rangeAvg(-2, 2, 2)) ;
    applySystem((System) homeworld, actor) ;
    applySex(actor) ;
    //
    //  Finally, specify name and (TODO:) a few other details of appearance.
    for (String name : Wording.namesFor(actor)) {
      if (fullName == null) fullName = name ;
      else fullName+=" "+name ;
    }
    ///I.say("Full name: "+fullName) ;
    //
    //  Along with current wealth and equipment-
    applyGear(vocation, actor) ;
  }