public static void addCommissions(
    Actor actor, Venue makes, Choice choice
  ) {
    final boolean hasCommission = actor.mind.hasToDo(Commission.class) ;
    if (hasCommission) return ;
    
    //  Check to see if this venue makes the actor's device type, and if an
    //  upgrade/repair to said device is needed.
    final DeviceType DT = actor.gear.deviceType() ;
    if (DT != null && DT.materials().venueType == makes.getClass()) {
      final int DQ = (int) actor.gear.deviceEquipped().quality ;
      final float DA = actor.gear.deviceEquipped().amount ;
      
      if (DQ < Item.MAX_QUALITY) {
        final Item nextDevice = Item.withQuality(DT, DQ + 1) ;
        choice.add(new Commission(actor, nextDevice, makes)) ;
      }
      if (DA < 1) {
        final Item nextDevice = Item.withQuality(DT, DQ) ;
        choice.add(new Commission(actor, nextDevice, makes)) ;
      }
    }
    
    //  Similarly for armour-
    final OutfitType OT = actor.gear.outfitType() ;
    if (OT != null && OT.materials.venueType == makes.getClass()) {
      final int OQ = (int) actor.gear.outfitEquipped().quality ;
      final float OA = actor.gear.outfitEquipped().amount ;
      
      if (OQ < Item.MAX_QUALITY) {
        final Item nextOutfit = Item.withQuality(OT, OQ + 1) ;
        choice.add(new Commission(actor, nextOutfit, makes)) ;
      }
      if (OA < 1) {
        final Item nextOutfit = Item.withQuality(OT, OQ) ;
        choice.add(new Commission(actor, nextOutfit, makes)) ;
      }
    }
  }