# Hierarchy For All Packages

Package Hierarchies:

- org.optaplanner.benchmark.api,
- org.optaplanner.benchmark.config,
- org.optaplanner.benchmark.config.blueprint,
- org.optaplanner.benchmark.config.ranking,
- org.optaplanner.benchmark.config.report,
- org.optaplanner.benchmark.config.statistic,
- org.optaplanner.benchmark.impl,
- org.optaplanner.benchmark.impl.aggregator,
- org.optaplanner.benchmark.impl.aggregator.swingui,
- org.optaplanner.benchmark.impl.cli,
- org.optaplanner.benchmark.impl.io,
- org.optaplanner.benchmark.impl.loader,
- org.optaplanner.benchmark.impl.measurement,
- org.optaplanner.benchmark.impl.ranking,
- org.optaplanner.benchmark.impl.report,
- org.optaplanner.benchmark.impl.result,
- org.optaplanner.benchmark.impl.statistic,
- org.optaplanner.benchmark.impl.statistic.bestscore,
- org.optaplanner.benchmark.impl.statistic.bestsolutionmutation,
- org.optaplanner.benchmark.impl.statistic.common,
- org.optaplanner.benchmark.impl.statistic.memoryuse,
- org.optaplanner.benchmark.impl.statistic.movecountperstep,
- org.optaplanner.benchmark.impl.statistic.scorecalculationspeed,
- org.optaplanner.benchmark.impl.statistic.stepscore,
- org.optaplanner.benchmark.impl.statistic.subsingle.constraintmatchtotalbestscore,
- org.optaplanner.benchmark.impl.statistic.subsingle.constraintmatchtotalstepscore,
- org.optaplanner.benchmark.impl.statistic.subsingle.pickedmovetypebestscore,
- org.optaplanner.benchmark.impl.statistic.subsingle.pickedmovetypestepscore,
- org.optaplanner.benchmark.impl.xsd,
- org.optaplanner.core.api,
- org.optaplanner.core.api.domain,
- org.optaplanner.core.api.domain.autodiscover,
- org.optaplanner.core.api.domain.constraintweight,
- org.optaplanner.core.api.domain.entity,
- org.optaplanner.core.api.domain.lookup,
- org.optaplanner.core.api.domain.solution,
- org.optaplanner.core.api.domain.solution.cloner,
- org.optaplanner.core.api.domain.valuerange,
- org.optaplanner.core.api.domain.variable,
- org.optaplanner.core.api.function,
- org.optaplanner.core.api.score,
- org.optaplanner.core.api.score.buildin,
- org.optaplanner.core.api.score.buildin.bendable,
- org.optaplanner.core.api.score.buildin.bendablebigdecimal,
- org.optaplanner.core.api.score.buildin.bendablelong,
- org.optaplanner.core.api.score.buildin.hardmediumsoft,
- org.optaplanner.core.api.score.buildin.hardmediumsoftbigdecimal,
- org.optaplanner.core.api.score.buildin.hardmediumsoftlong,
- org.optaplanner.core.api.score.buildin.hardsoft,
- org.optaplanner.core.api.score.buildin.hardsoftbigdecimal,
- org.optaplanner.core.api.score.buildin.hardsoftlong,
- org.optaplanner.core.api.score.buildin.simple,
- org.optaplanner.core.api.score.buildin.simplebigdecimal,
- org.optaplanner.core.api.score.buildin.simplelong,
- org.optaplanner.core.api.score.calculator,
- org.optaplanner.core.api.score.constraint,
- org.optaplanner.core.api.score.director,
- org.optaplanner.core.api.score.holder,
- org.optaplanner.core.api.score.stream,
- org.optaplanner.core.api.score.stream.bi,
- org.optaplanner.core.api.score.stream.penta,
- org.optaplanner.core.api.score.stream.quad,
- org.optaplanner.core.api.score.stream.tri,
- org.optaplanner.core.api.score.stream.uni,
- org.optaplanner.core.api.solver,
- org.optaplanner.core.api.solver.event,
- org.optaplanner.core.config,
- org.optaplanner.core.config.constructionheuristic,
- org.optaplanner.core.config.constructionheuristic.decider.forager,
- org.optaplanner.core.config.constructionheuristic.placer,
- org.optaplanner.core.config.exhaustivesearch,
- org.optaplanner.core.config.heuristic.selector,
- org.optaplanner.core.config.heuristic.selector.common,
- org.optaplanner.core.config.heuristic.selector.common.decorator,
- org.optaplanner.core.config.heuristic.selector.common.nearby,
- org.optaplanner.core.config.heuristic.selector.entity,
- org.optaplanner.core.config.heuristic.selector.entity.pillar,
- org.optaplanner.core.config.heuristic.selector.move,
- org.optaplanner.core.config.heuristic.selector.move.composite,
- org.optaplanner.core.config.heuristic.selector.move.factory,
- org.optaplanner.core.config.heuristic.selector.move.generic,
- org.optaplanner.core.config.heuristic.selector.move.generic.chained,
- org.optaplanner.core.config.heuristic.selector.value,
- org.optaplanner.core.config.heuristic.selector.value.chained,
- org.optaplanner.core.config.localsearch,
- org.optaplanner.core.config.localsearch.decider.acceptor,
- org.optaplanner.core.config.localsearch.decider.acceptor.stepcountinghillclimbing,
- org.optaplanner.core.config.localsearch.decider.forager,
- org.optaplanner.core.config.partitionedsearch,
- org.optaplanner.core.config.phase,
- org.optaplanner.core.config.phase.custom,
- org.optaplanner.core.config.score.definition,
- org.optaplanner.core.config.score.director,
- org.optaplanner.core.config.score.trend,
- org.optaplanner.core.config.solver,
- org.optaplanner.core.config.solver.random,
- org.optaplanner.core.config.solver.termination,
- org.optaplanner.core.config.util,
- org.optaplanner.core.impl,
- org.optaplanner.core.impl.constructionheuristic,
- org.optaplanner.core.impl.constructionheuristic.decider,
- org.optaplanner.core.impl.constructionheuristic.decider.forager,
- org.optaplanner.core.impl.constructionheuristic.event,
- org.optaplanner.core.impl.constructionheuristic.placer,
- org.optaplanner.core.impl.constructionheuristic.scope,
- org.optaplanner.core.impl.domain.common,
- org.optaplanner.core.impl.domain.common.accessor,
- org.optaplanner.core.impl.domain.constraintweight.descriptor,
- org.optaplanner.core.impl.domain.entity.descriptor,
- org.optaplanner.core.impl.domain.lookup,
- org.optaplanner.core.impl.domain.policy,
- org.optaplanner.core.impl.domain.solution.cloner,
- org.optaplanner.core.impl.domain.solution.descriptor,
- org.optaplanner.core.impl.domain.solution.mutation,
- org.optaplanner.core.impl.domain.valuerange,
- org.optaplanner.core.impl.domain.valuerange.buildin.bigdecimal,
- org.optaplanner.core.impl.domain.valuerange.buildin.biginteger,
- org.optaplanner.core.impl.domain.valuerange.buildin.collection,
- org.optaplanner.core.impl.domain.valuerange.buildin.composite,
- org.optaplanner.core.impl.domain.valuerange.buildin.primboolean,
- org.optaplanner.core.impl.domain.valuerange.buildin.primdouble,
- org.optaplanner.core.impl.domain.valuerange.buildin.primint,
- org.optaplanner.core.impl.domain.valuerange.buildin.primlong,
- org.optaplanner.core.impl.domain.valuerange.buildin.temporal,
- org.optaplanner.core.impl.domain.valuerange.descriptor,
- org.optaplanner.core.impl.domain.valuerange.util,
- org.optaplanner.core.impl.domain.variable.anchor,
- org.optaplanner.core.impl.domain.variable.custom,
- org.optaplanner.core.impl.domain.variable.descriptor,
- org.optaplanner.core.impl.domain.variable.inverserelation,
- org.optaplanner.core.impl.domain.variable.listener,
- org.optaplanner.core.impl.domain.variable.listener.support,
- org.optaplanner.core.impl.domain.variable.supply,
- org.optaplanner.core.impl.exhaustivesearch,
- org.optaplanner.core.impl.exhaustivesearch.decider,
- org.optaplanner.core.impl.exhaustivesearch.event,
- org.optaplanner.core.impl.exhaustivesearch.node,
- org.optaplanner.core.impl.exhaustivesearch.node.bounder,
- org.optaplanner.core.impl.exhaustivesearch.node.comparator,
- org.optaplanner.core.impl.exhaustivesearch.scope,
- org.optaplanner.core.impl.heuristic,
- org.optaplanner.core.impl.heuristic.move,
- org.optaplanner.core.impl.heuristic.selector,
- org.optaplanner.core.impl.heuristic.selector.common,
- org.optaplanner.core.impl.heuristic.selector.common.decorator,
- org.optaplanner.core.impl.heuristic.selector.common.iterator,
- org.optaplanner.core.impl.heuristic.selector.common.nearby,
- org.optaplanner.core.impl.heuristic.selector.entity,
- org.optaplanner.core.impl.heuristic.selector.entity.decorator,
- org.optaplanner.core.impl.heuristic.selector.entity.mimic,
- org.optaplanner.core.impl.heuristic.selector.entity.nearby,
- org.optaplanner.core.impl.heuristic.selector.entity.pillar,
- org.optaplanner.core.impl.heuristic.selector.move,
- org.optaplanner.core.impl.heuristic.selector.move.composite,
- org.optaplanner.core.impl.heuristic.selector.move.decorator,
- org.optaplanner.core.impl.heuristic.selector.move.factory,
- org.optaplanner.core.impl.heuristic.selector.move.generic,
- org.optaplanner.core.impl.heuristic.selector.move.generic.chained,
- org.optaplanner.core.impl.heuristic.selector.value,
- org.optaplanner.core.impl.heuristic.selector.value.chained,
- org.optaplanner.core.impl.heuristic.selector.value.decorator,
- org.optaplanner.core.impl.heuristic.selector.value.mimic,
- org.optaplanner.core.impl.heuristic.selector.value.nearby,
- org.optaplanner.core.impl.heuristic.thread,
- org.optaplanner.core.impl.io,
- org.optaplanner.core.impl.io.jaxb,
- org.optaplanner.core.impl.io.jaxb.adapter,
- org.optaplanner.core.impl.localsearch,
- org.optaplanner.core.impl.localsearch.decider,
- org.optaplanner.core.impl.localsearch.decider.acceptor,
- org.optaplanner.core.impl.localsearch.decider.acceptor.greatdeluge,
- org.optaplanner.core.impl.localsearch.decider.acceptor.hillclimbing,
- org.optaplanner.core.impl.localsearch.decider.acceptor.lateacceptance,
- org.optaplanner.core.impl.localsearch.decider.acceptor.simulatedannealing,
- org.optaplanner.core.impl.localsearch.decider.acceptor.stepcountinghillclimbing,
- org.optaplanner.core.impl.localsearch.decider.acceptor.tabu,
- org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.size,
- org.optaplanner.core.impl.localsearch.decider.forager,
- org.optaplanner.core.impl.localsearch.decider.forager.finalist,
- org.optaplanner.core.impl.localsearch.event,
- org.optaplanner.core.impl.localsearch.scope,
- org.optaplanner.core.impl.partitionedsearch,
- org.optaplanner.core.impl.partitionedsearch.event,
- org.optaplanner.core.impl.partitionedsearch.partitioner,
- org.optaplanner.core.impl.partitionedsearch.queue,
- org.optaplanner.core.impl.partitionedsearch.scope,
- org.optaplanner.core.impl.phase,
- org.optaplanner.core.impl.phase.custom,
- org.optaplanner.core.impl.phase.custom.scope,
- org.optaplanner.core.impl.phase.event,
- org.optaplanner.core.impl.phase.scope,
- org.optaplanner.core.impl.score,
- org.optaplanner.core.impl.score.buildin.bendable,
- org.optaplanner.core.impl.score.buildin.bendablebigdecimal,
- org.optaplanner.core.impl.score.buildin.bendablelong,
- org.optaplanner.core.impl.score.buildin.hardmediumsoft,
- org.optaplanner.core.impl.score.buildin.hardmediumsoftbigdecimal,
- org.optaplanner.core.impl.score.buildin.hardmediumsoftlong,
- org.optaplanner.core.impl.score.buildin.hardsoft,
- org.optaplanner.core.impl.score.buildin.hardsoftbigdecimal,
- org.optaplanner.core.impl.score.buildin.hardsoftlong,
- org.optaplanner.core.impl.score.buildin.simple,
- org.optaplanner.core.impl.score.buildin.simplebigdecimal,
- org.optaplanner.core.impl.score.buildin.simplelong,
- org.optaplanner.core.impl.score.comparator,
- org.optaplanner.core.impl.score.constraint,
- org.optaplanner.core.impl.score.definition,
- org.optaplanner.core.impl.score.director,
- org.optaplanner.core.impl.score.director.drools,
- org.optaplanner.core.impl.score.director.drools.testgen,
- org.optaplanner.core.impl.score.director.drools.testgen.fact,
- org.optaplanner.core.impl.score.director.drools.testgen.mutation,
- org.optaplanner.core.impl.score.director.drools.testgen.operation,
- org.optaplanner.core.impl.score.director.drools.testgen.reproducer,
- org.optaplanner.core.impl.score.director.easy,
- org.optaplanner.core.impl.score.director.incremental,
- org.optaplanner.core.impl.score.director.stream,
- org.optaplanner.core.impl.score.holder,
- org.optaplanner.core.impl.score.inliner,
- org.optaplanner.core.impl.score.stream,
- org.optaplanner.core.impl.score.stream.bavet,
- org.optaplanner.core.impl.score.stream.bavet.bi,
- org.optaplanner.core.impl.score.stream.bavet.common,
- org.optaplanner.core.impl.score.stream.bavet.common.index,
- org.optaplanner.core.impl.score.stream.bavet.tri,
- org.optaplanner.core.impl.score.stream.bavet.uni,
- org.optaplanner.core.impl.score.stream.bi,
- org.optaplanner.core.impl.score.stream.common,
- org.optaplanner.core.impl.score.stream.drools,
- org.optaplanner.core.impl.score.stream.drools.bi,
- org.optaplanner.core.impl.score.stream.drools.common,
- org.optaplanner.core.impl.score.stream.drools.common.consequences,
- org.optaplanner.core.impl.score.stream.drools.common.nodes,
- org.optaplanner.core.impl.score.stream.drools.common.rules,
- org.optaplanner.core.impl.score.stream.drools.quad,
- org.optaplanner.core.impl.score.stream.drools.tri,
- org.optaplanner.core.impl.score.stream.drools.uni,
- org.optaplanner.core.impl.score.stream.penta,
- org.optaplanner.core.impl.score.stream.quad,
- org.optaplanner.core.impl.score.stream.tri,
- org.optaplanner.core.impl.score.stream.uni,
- org.optaplanner.core.impl.score.trend,
- org.optaplanner.core.impl.solver,
- org.optaplanner.core.impl.solver.event,
- org.optaplanner.core.impl.solver.random,
- org.optaplanner.core.impl.solver.recaller,
- org.optaplanner.core.impl.solver.scope,
- org.optaplanner.core.impl.solver.termination,
- org.optaplanner.core.impl.solver.thread,
- org.optaplanner.persistence.common.api.domain.solution,
- org.optaplanner.persistence.jackson.api,
- org.optaplanner.persistence.jackson.api.score,
- org.optaplanner.persistence.jackson.api.score.buildin.bendable,
- org.optaplanner.persistence.jackson.api.score.buildin.bendablebigdecimal,
- org.optaplanner.persistence.jackson.api.score.buildin.bendablelong,
- org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoft,
- org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoftbigdecimal,
- org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoftlong,
- org.optaplanner.persistence.jackson.api.score.buildin.hardsoft,
- org.optaplanner.persistence.jackson.api.score.buildin.hardsoftbigdecimal,
- org.optaplanner.persistence.jackson.api.score.buildin.hardsoftlong,
- org.optaplanner.persistence.jackson.api.score.buildin.simple,
- org.optaplanner.persistence.jackson.api.score.buildin.simplebigdecimal,
- org.optaplanner.persistence.jackson.api.score.buildin.simplelong,
- org.optaplanner.persistence.jackson.impl.domain.solution,
- org.optaplanner.persistence.jaxb.api.score,
- org.optaplanner.persistence.jaxb.api.score.buildin.bendable,
- org.optaplanner.persistence.jaxb.api.score.buildin.bendablebigdecimal,
- org.optaplanner.persistence.jaxb.api.score.buildin.bendablelong,
- org.optaplanner.persistence.jaxb.api.score.buildin.hardmediumsoft,
- org.optaplanner.persistence.jaxb.api.score.buildin.hardmediumsoftbigdecimal,
- org.optaplanner.persistence.jaxb.api.score.buildin.hardmediumsoftlong,
- org.optaplanner.persistence.jaxb.api.score.buildin.hardsoft,
- org.optaplanner.persistence.jaxb.api.score.buildin.hardsoftbigdecimal,
- org.optaplanner.persistence.jaxb.api.score.buildin.hardsoftlong,
- org.optaplanner.persistence.jaxb.api.score.buildin.simple,
- org.optaplanner.persistence.jaxb.api.score.buildin.simplebigdecimal,
- org.optaplanner.persistence.jaxb.api.score.buildin.simplelong,
- org.optaplanner.persistence.jaxb.impl.domain.solution,
- org.optaplanner.persistence.jpa.api.score.buildin.bendable,
- org.optaplanner.persistence.jpa.api.score.buildin.bendablebigdecimal,
- org.optaplanner.persistence.jpa.api.score.buildin.bendablelong,
- org.optaplanner.persistence.jpa.api.score.buildin.hardmediumsoft,
- org.optaplanner.persistence.jpa.api.score.buildin.hardmediumsoftbigdecimal,
- org.optaplanner.persistence.jpa.api.score.buildin.hardmediumsoftlong,
- org.optaplanner.persistence.jpa.api.score.buildin.hardsoft,
- org.optaplanner.persistence.jpa.api.score.buildin.hardsoftbigdecimal,
- org.optaplanner.persistence.jpa.api.score.buildin.hardsoftlong,
- org.optaplanner.persistence.jpa.api.score.buildin.simple,
- org.optaplanner.persistence.jpa.api.score.buildin.simplebigdecimal,
- org.optaplanner.persistence.jpa.api.score.buildin.simplelong,
- org.optaplanner.persistence.jpa.impl.score,
- org.optaplanner.persistence.jpa.impl.score.buildin.bendable,
- org.optaplanner.persistence.jpa.impl.score.buildin.bendablebigdecimal,
- org.optaplanner.persistence.jpa.impl.score.buildin.bendablelong,
- org.optaplanner.persistence.jpa.impl.score.buildin.hardmediumsoft,
- org.optaplanner.persistence.jpa.impl.score.buildin.hardmediumsoftbigdecimal,
- org.optaplanner.persistence.jpa.impl.score.buildin.hardmediumsoftlong,
- org.optaplanner.persistence.jpa.impl.score.buildin.hardsoft,
- org.optaplanner.persistence.jpa.impl.score.buildin.hardsoftbigdecimal,
- org.optaplanner.persistence.jpa.impl.score.buildin.hardsoftlong,
- org.optaplanner.persistence.jpa.impl.score.buildin.simple,
- org.optaplanner.persistence.jpa.impl.score.buildin.simplebigdecimal,
- org.optaplanner.persistence.jpa.impl.score.buildin.simplelong,
- org.optaplanner.persistence.jsonb.api,
- org.optaplanner.persistence.jsonb.api.score,
- org.optaplanner.persistence.jsonb.api.score.buildin.bendable,
- org.optaplanner.persistence.jsonb.api.score.buildin.bendablebigdecimal,
- org.optaplanner.persistence.jsonb.api.score.buildin.bendablelong,
- org.optaplanner.persistence.jsonb.api.score.buildin.hardmediumsoft,
- org.optaplanner.persistence.jsonb.api.score.buildin.hardmediumsoftbigdecimal,
- org.optaplanner.persistence.jsonb.api.score.buildin.hardmediumsoftlong,
- org.optaplanner.persistence.jsonb.api.score.buildin.hardsoft,
- org.optaplanner.persistence.jsonb.api.score.buildin.hardsoftbigdecimal,
- org.optaplanner.persistence.jsonb.api.score.buildin.hardsoftlong,
- org.optaplanner.persistence.jsonb.api.score.buildin.simple,
- org.optaplanner.persistence.jsonb.api.score.buildin.simplebigdecimal,
- org.optaplanner.persistence.jsonb.api.score.buildin.simplelong,
- org.optaplanner.persistence.xstream.api.score,
- org.optaplanner.persistence.xstream.api.score.buildin.bendable,
- org.optaplanner.persistence.xstream.api.score.buildin.bendablebigdecimal,
- org.optaplanner.persistence.xstream.api.score.buildin.bendablelong,
- org.optaplanner.persistence.xstream.api.score.buildin.hardmediumsoft,
- org.optaplanner.persistence.xstream.api.score.buildin.hardmediumsoftbigdecimal,
- org.optaplanner.persistence.xstream.api.score.buildin.hardmediumsoftlong,
- org.optaplanner.persistence.xstream.api.score.buildin.hardsoft,
- org.optaplanner.persistence.xstream.api.score.buildin.hardsoftbigdecimal,
- org.optaplanner.persistence.xstream.api.score.buildin.hardsoftlong,
- org.optaplanner.persistence.xstream.api.score.buildin.simple,
- org.optaplanner.persistence.xstream.api.score.buildin.simplebigdecimal,
- org.optaplanner.persistence.xstream.api.score.buildin.simplelong,
- org.optaplanner.persistence.xstream.impl.domain.solution,
- org.optaplanner.swing.impl,
- org.optaplanner.test.api.score.stream,
- org.optaplanner.test.impl.score,
- org.optaplanner.test.impl.score.buildin.bendable,
- org.optaplanner.test.impl.score.buildin.bendablebigdecimal,
- org.optaplanner.test.impl.score.buildin.bendablelong,
- org.optaplanner.test.impl.score.buildin.hardmediumsoft,
- org.optaplanner.test.impl.score.buildin.hardmediumsoftlong,
- org.optaplanner.test.impl.score.buildin.hardsoft,
- org.optaplanner.test.impl.score.buildin.hardsoftbigdecimal,
- org.optaplanner.test.impl.score.buildin.hardsoftlong,
- org.optaplanner.test.impl.score.buildin.simple,
- org.optaplanner.test.impl.score.buildin.simplebigdecimal,
- org.optaplanner.test.impl.score.buildin.simplelong,
- org.optaplanner.test.impl.score.stream

## Class Hierarchy

- java.lang.Object
  - org.optaplanner.core.config.AbstractConfig<Config_>
    - org.optaplanner.benchmark.config.report.BenchmarkReportConfig
    - org.optaplanner.core.config.constructionheuristic.decider.forager.ConstructionHeuristicForagerConfig
    - org.optaplanner.core.config.constructionheuristic.placer.EntityPlacerConfig<Config_>
      - org.optaplanner.core.config.constructionheuristic.placer.PooledEntityPlacerConfig
      - org.optaplanner.core.config.constructionheuristic.placer.QueuedEntityPlacerConfig
      - org.optaplanner.core.config.constructionheuristic.placer.QueuedValuePlacerConfig
    - org.optaplanner.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig
    - org.optaplanner.core.config.localsearch.decider.forager.LocalSearchForagerConfig
    - org.optaplanner.core.config.phase.PhaseConfig<Config_>
      - org.optaplanner.core.config.constructionheuristic.ConstructionHeuristicPhaseConfig
      - org.optaplanner.core.config.phase.custom.CustomPhaseConfig
      - org.optaplanner.core.config.exhaustivesearch.ExhaustiveSearchPhaseConfig
      - org.optaplanner.core.config.localsearch.LocalSearchPhaseConfig
      - org.optaplanner.core.config.phase.NoChangePhaseConfig
      - org.optaplanner.core.config.partitionedsearch.PartitionedSearchPhaseConfig
    - org.optaplanner.benchmark.config.ProblemBenchmarksConfig
    - org.optaplanner.core.config.score.director.ScoreDirectorFactoryConfig
    - org.optaplanner.core.config.heuristic.selector.SelectorConfig<Config_>
      - org.optaplanner.core.config.heuristic.selector.entity.EntitySelectorConfig
      - org.optaplanner.core.config.heuristic.selector.move.MoveSelectorConfig<Config_>
        - org.optaplanner.core.config.heuristic.selector.move.generic.AbstractPillarMoveSelectorConfig<Config_>
          - org.optaplanner.core.config.heuristic.selector.move.generic.PillarChangeMoveSelectorConfig
          - org.optaplanner.core.config.heuristic.selector.move.generic.PillarSwapMoveSelectorConfig
        - org.optaplanner.core.config.heuristic.selector.move.composite.CartesianProductMoveSelectorConfig
        - org.optaplanner.core.config.heuristic.selector.move.generic.ChangeMoveSelectorConfig
        - org.optaplanner.core.config.heuristic.selector.move.generic.chained.KOptMoveSelectorConfig
        - org.optaplanner.core.config.heuristic.selector.move.factory.MoveIteratorFactoryConfig
        - org.optaplanner.core.config.heuristic.selector.move.factory.MoveListFactoryConfig
        - org.optaplanner.core.config.heuristic.selector.move.generic.chained.SubChainChangeMoveSelectorConfig
        - org.optaplanner.core.config.heuristic.selector.move.generic.chained.SubChainSwapMoveSelectorConfig
        - org.optaplanner.core.config.heuristic.selector.move.generic.SwapMoveSelectorConfig
        - org.optaplanner.core.config.heuristic.selector.move.generic.chained.TailChainSwapMoveSelectorConfig
        - org.optaplanner.core.config.heuristic.selector.move.composite.UnionMoveSelectorConfig
      - org.optaplanner.core.config.heuristic.selector.common.nearby.NearbySelectionConfig
      - org.optaplanner.core.config.heuristic.selector.entity.pillar.PillarSelectorConfig
      - org.optaplanner.core.config.heuristic.selector.value.chained.SubChainSelectorConfig
      - org.optaplanner.core.config.heuristic.selector.value.ValueSelectorConfig
    - org.optaplanner.benchmark.config.SolverBenchmarkConfig
    - org.optaplanner.core.config.solver.SolverConfig
    - org.optaplanner.core.config.solver.SolverManagerConfig
    - org.optaplanner.core.config.solver.termination.TerminationConfig
  - org.optaplanner.core.impl.score.stream.common.AbstractConstraint<Solution_,​ConstraintFactory> (implements org.optaplanner.core.api.score.stream.Constraint)
    - org.optaplanner.core.impl.score.stream.bavet.BavetConstraint<Solution_>
    - org.optaplanner.core.impl.score.stream.drools.DroolsConstraint<Solution_>
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.AbstractConstraintModelNode (implements org.optaplanner.core.impl.score.stream.drools.common.nodes.ConstraintGraphNode)
    - org.optaplanner.core.impl.score.stream.drools.common.nodes.AbstractConstraintModelChildNode (implements org.optaplanner.core.impl.score.stream.drools.common.nodes.ChildNode)
      - org.optaplanner.core.impl.score.stream.drools.common.nodes.AbstractConstraintModelGroupingNode<FunctionType_,​CollectorType_>
      - org.optaplanner.core.impl.score.stream.drools.common.nodes.AbstractConstraintModelJoiningNode<OtherFactType_,​JoinerType_> (implements java.util.function.Supplier<T>)
    - org.optaplanner.core.impl.score.stream.drools.common.nodes.FromNode<A> (implements org.optaplanner.core.impl.score.stream.drools.common.nodes.UniConstraintGraphNode)
  - org.optaplanner.core.impl.score.stream.common.AbstractConstraintStream<Solution_> (implements org.optaplanner.core.api.score.stream.ConstraintStream)
    - org.optaplanner.core.impl.score.stream.bavet.common.BavetAbstractConstraintStream<Solution_>
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetAbstractBiConstraintStream<Solution_,​A,​B> (implements org.optaplanner.core.impl.score.stream.bi.InnerBiConstraintStream<A,​B>)
        - org.optaplanner.core.impl.score.stream.bavet.bi.BavetFilterBiConstraintStream<Solution_,​A,​B>
        - org.optaplanner.core.impl.score.stream.bavet.bi.BavetGroupBiConstraintStream<Solution_,​GroupKey_,​ResultContainer_,​Result_>
        - org.optaplanner.core.impl.score.stream.bavet.bi.BavetJoinBiConstraintStream<Solution_,​A,​B> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinConstraintStream<Solution_>)
        - org.optaplanner.core.impl.score.stream.bavet.bi.BavetJoinBridgeBiConstraintStream<Solution_,​A,​B> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeConstraintStream<Solution_>)
        - org.optaplanner.core.impl.score.stream.bavet.bi.BavetScoringBiConstraintStream<Solution_,​A,​B>
      - org.optaplanner.core.impl.score.stream.bavet.tri.BavetAbstractTriConstraintStream<Solution_,​A,​B,​C> (implements org.optaplanner.core.impl.score.stream.tri.InnerTriConstraintStream<A,​B,​C>)
        - org.optaplanner.core.impl.score.stream.bavet.tri.BavetFilterTriConstraintStream<Solution_,​A,​B,​C>
        - org.optaplanner.core.impl.score.stream.bavet.tri.BavetJoinTriConstraintStream<Solution_,​A,​B,​C> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinConstraintStream<Solution_>)
        - org.optaplanner.core.impl.score.stream.bavet.tri.BavetScoringTriConstraintStream<Solution_,​A,​B,​C>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetAbstractUniConstraintStream<Solution_,​A> (implements org.optaplanner.core.impl.score.stream.uni.InnerUniConstraintStream<A>)
        - org.optaplanner.core.impl.score.stream.bavet.uni.BavetFilterUniConstraintStream<Solution_,​A>
        - org.optaplanner.core.impl.score.stream.bavet.uni.BavetFromUniConstraintStream<Solution_,​A>
        - org.optaplanner.core.impl.score.stream.bavet.uni.BavetGroupBridgeUniConstraintStream<Solution_,​A,​NewA,​ResultContainer_,​NewB>
        - org.optaplanner.core.impl.score.stream.bavet.uni.BavetJoinBridgeUniConstraintStream<Solution_,​A> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeConstraintStream<Solution_>)
        - org.optaplanner.core.impl.score.stream.bavet.uni.BavetScoringUniConstraintStream<Solution_,​A>
    - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractConstraintStream<Solution_>
      - org.optaplanner.core.impl.score.stream.drools.bi.DroolsAbstractBiConstraintStream<Solution_,​A,​B> (implements org.optaplanner.core.impl.score.stream.bi.InnerBiConstraintStream<A,​B>)
        - org.optaplanner.core.impl.score.stream.drools.bi.DroolsExistsBiConstraintStream<Solution_,​A,​B>
        - org.optaplanner.core.impl.score.stream.drools.bi.DroolsFilterBiConstraintStream<Solution_,​A,​B>
        - org.optaplanner.core.impl.score.stream.drools.bi.DroolsGroupingBiConstraintStream<Solution_,​NewA,​NewB>
        - org.optaplanner.core.impl.score.stream.drools.bi.DroolsJoinBiConstraintStream<Solution_,​A,​B>
      - org.optaplanner.core.impl.score.stream.drools.quad.DroolsAbstractQuadConstraintStream<Solution_,​A,​B,​C,​D> (implements org.optaplanner.core.impl.score.stream.quad.InnerQuadConstraintStream<A,​B,​C,​D>)
        - org.optaplanner.core.impl.score.stream.drools.quad.DroolsExistsQuadConstraintStream<Solution_,​A,​B,​C,​D>
        - org.optaplanner.core.impl.score.stream.drools.quad.DroolsFilterQuadConstraintStream<Solution_,​A,​B,​C,​D>
        - org.optaplanner.core.impl.score.stream.drools.quad.DroolsGroupingQuadConstraintStream<Solution_,​NewA,​NewB,​NewC,​NewD>
        - org.optaplanner.core.impl.score.stream.drools.quad.DroolsJoinQuadConstraintStream<Solution_,​A,​B,​C,​D>
      - org.optaplanner.core.impl.score.stream.drools.tri.DroolsAbstractTriConstraintStream<Solution_,​A,​B,​C> (implements org.optaplanner.core.impl.score.stream.tri.InnerTriConstraintStream<A,​B,​C>)
        - org.optaplanner.core.impl.score.stream.drools.tri.DroolsExistsTriConstraintStream<Solution_,​A,​B,​C>
        - org.optaplanner.core.impl.score.stream.drools.tri.DroolsFilterTriConstraintStream<Solution_,​A,​B,​C>
        - org.optaplanner.core.impl.score.stream.drools.tri.DroolsGroupingTriConstraintStream<Solution_,​NewA,​NewB,​NewC>
        - org.optaplanner.core.impl.score.stream.drools.tri.DroolsJoinTriConstraintStream<Solution_,​A,​B,​C>
      - org.optaplanner.core.impl.score.stream.drools.uni.DroolsAbstractUniConstraintStream<Solution_,​A> (implements org.optaplanner.core.impl.score.stream.uni.InnerUniConstraintStream<A>)
        - org.optaplanner.core.impl.score.stream.drools.uni.DroolsExistsUniConstraintStream<Solution_,​A>
        - org.optaplanner.core.impl.score.stream.drools.uni.DroolsFilterUniConstraintStream<Solution_,​A>
        - org.optaplanner.core.impl.score.stream.drools.uni.DroolsFromUniConstraintStream<Solution_,​A>
        - org.optaplanner.core.impl.score.stream.drools.uni.DroolsGroupingUniConstraintStream<Solution_,​NewA>
  - org.optaplanner.core.impl.score.stream.common.AbstractConstraintStreamHelper<Right,​JoinedStream,​Joiner,​Predicate>
    - org.optaplanner.core.impl.score.stream.bi.BiConstraintStreamHelper<A,​B,​C>
    - org.optaplanner.core.impl.score.stream.tri.TriConstraintStreamHelper<A,​B,​C,​D>
    - org.optaplanner.core.impl.score.stream.uni.UniConstraintStreamHelper<A,​B>
  - org.optaplanner.core.impl.domain.valuerange.AbstractCountableValueRange<T> (implements org.optaplanner.core.api.domain.valuerange.CountableValueRange<T>)
    - org.optaplanner.core.impl.domain.valuerange.buildin.bigdecimal.BigDecimalValueRange
    - org.optaplanner.core.impl.domain.valuerange.buildin.biginteger.BigIntegerValueRange
    - org.optaplanner.core.impl.domain.valuerange.buildin.primboolean.BooleanValueRange
    - org.optaplanner.core.impl.domain.valuerange.buildin.composite.CompositeCountableValueRange<T>
    - org.optaplanner.core.impl.domain.valuerange.buildin.composite.EmptyValueRange<T>
    - org.optaplanner.core.impl.domain.valuerange.buildin.primint.IntValueRange
    - org.optaplanner.core.impl.domain.valuerange.buildin.collection.ListValueRange<T>
    - org.optaplanner.core.impl.domain.valuerange.buildin.primlong.LongValueRange
    - org.optaplanner.core.impl.domain.valuerange.buildin.composite.NullableCountableValueRange<T>
    - org.optaplanner.core.impl.domain.valuerange.buildin.temporal.TemporalValueRange<Temporal_>
  - org.optaplanner.core.impl.constructionheuristic.placer.AbstractEntityPlacer<Solution_> (implements org.optaplanner.core.impl.constructionheuristic.placer.EntityPlacer<Solution_>)
    - org.optaplanner.core.impl.constructionheuristic.placer.PooledEntityPlacer<Solution_> (implements org.optaplanner.core.impl.constructionheuristic.placer.EntityPlacer<Solution_>)
    - org.optaplanner.core.impl.constructionheuristic.placer.QueuedEntityPlacer<Solution_> (implements org.optaplanner.core.impl.constructionheuristic.placer.EntityPlacer<Solution_>)
    - org.optaplanner.core.impl.constructionheuristic.placer.QueuedValuePlacer<Solution_> (implements org.optaplanner.core.impl.constructionheuristic.placer.EntityPlacer<Solution_>)
  - org.optaplanner.core.impl.solver.event.AbstractEventSupport<E>
    - org.optaplanner.core.impl.phase.event.PhaseLifecycleSupport<Solution_>
    - org.optaplanner.core.impl.solver.event.SolverEventSupport<Solution_>
    - org.optaplanner.core.impl.score.director.drools.testgen.TestGenKieSessionEventSupport (implements org.optaplanner.core.impl.score.director.drools.testgen.TestGenKieSessionListener)
  - org.optaplanner.core.impl.AbstractFromConfigFactory<Solution_,​Config_>
    - org.optaplanner.core.impl.heuristic.selector.AbstractSelectorFactory<Solution_,​SelectorConfig_>
      - org.optaplanner.core.impl.heuristic.selector.move.AbstractMoveSelectorFactory<Solution_,​MoveSelectorConfig_> (implements org.optaplanner.core.impl.heuristic.selector.move.MoveSelectorFactory<Solution_>)
        - org.optaplanner.core.impl.heuristic.selector.move.composite.CartesianProductMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.ChangeMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.KOptMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.factory.MoveIteratorFactoryFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.factory.MoveListFactoryFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.PillarChangeMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.PillarSwapMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.SubChainChangeMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.SubChainSwapMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.SwapMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.TailChainSwapMoveSelectorFactory<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.composite.UnionMoveSelectorFactory<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.EntitySelectorFactory<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.pillar.PillarSelectorFactory<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.value.ValueSelectorFactory<Solution_>
    - org.optaplanner.core.impl.constructionheuristic.placer.PooledEntityPlacerFactory<Solution_>
    - org.optaplanner.core.impl.constructionheuristic.placer.QueuedEntityPlacerFactory<Solution_>
    - org.optaplanner.core.impl.constructionheuristic.placer.QueuedValuePlacerFactory<Solution_>
  - org.optaplanner.core.impl.score.stream.common.AbstractJoiner
    - org.optaplanner.core.impl.score.stream.bi.AbstractBiJoiner<A,​B> (implements org.optaplanner.core.api.score.stream.bi.BiJoiner<A,​B>)
      - org.optaplanner.core.impl.score.stream.bi.CompositeBiJoiner<A,​B>
      - org.optaplanner.core.impl.score.stream.bi.FilteringBiJoiner<A,​B>
      - org.optaplanner.core.impl.score.stream.bi.NoneBiJoiner<A,​B>
      - org.optaplanner.core.impl.score.stream.bi.SingleBiJoiner<A,​B>
    - org.optaplanner.core.impl.score.stream.penta.AbstractPentaJoiner<A,​B,​C,​D,​E> (implements org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>)
      - org.optaplanner.core.impl.score.stream.penta.CompositePentaJoiner<A,​B,​C,​D,​E>
      - org.optaplanner.core.impl.score.stream.penta.FilteringPentaJoiner<A,​B,​C,​D,​E>
      - org.optaplanner.core.impl.score.stream.penta.NonePentaJoiner<A,​B,​C,​D,​E>
      - org.optaplanner.core.impl.score.stream.penta.SinglePentaJoiner<A,​B,​C,​D,​E>
    - org.optaplanner.core.impl.score.stream.quad.AbstractQuadJoiner<A,​B,​C,​D> (implements org.optaplanner.core.api.score.stream.quad.QuadJoiner<A,​B,​C,​D>)
      - org.optaplanner.core.impl.score.stream.quad.CompositeQuadJoiner<A,​B,​C,​D>
      - org.optaplanner.core.impl.score.stream.quad.FilteringQuadJoiner<A,​B,​C,​D>
      - org.optaplanner.core.impl.score.stream.quad.NoneQuadJoiner<A,​B,​C,​D>
      - org.optaplanner.core.impl.score.stream.quad.SingleQuadJoiner<A,​B,​C,​D>
    - org.optaplanner.core.impl.score.stream.tri.AbstractTriJoiner<A,​B,​C> (implements org.optaplanner.core.api.score.stream.tri.TriJoiner<A,​B,​C>)
      - org.optaplanner.core.impl.score.stream.tri.CompositeTriJoiner<A,​B,​C>
      - org.optaplanner.core.impl.score.stream.tri.FilteringTriJoiner<A,​B,​C>
      - org.optaplanner.core.impl.score.stream.tri.NoneTriJoiner<A,​B,​C>
      - org.optaplanner.core.impl.score.stream.tri.SingleTriJoiner<A,​B,​C>
  - java.util.AbstractMap<K,​V> (implements java.util.Map<K,​V>)
    - java.util.concurrent.ConcurrentHashMap<K,​V> (implements java.util.concurrent.ConcurrentMap<K,​V>, java.io.Serializable)
      - org.optaplanner.core.impl.domain.common.ConcurrentMemoization<K,​V>
  - org.optaplanner.core.impl.heuristic.move.AbstractMove<Solution_> (implements org.optaplanner.core.impl.heuristic.move.Move<Solution_>)
    - org.optaplanner.core.impl.heuristic.selector.move.generic.ChangeMove<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.ChainedChangeMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.KOptMove<Solution_>
    - org.optaplanner.core.impl.heuristic.move.NoChangeMove<Solution_>
    - org.optaplanner.core.impl.partitionedsearch.scope.PartitionChangeMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.PillarChangeMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.PillarSwapMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.SubChainChangeMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.SubChainReversingChangeMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.SubChainReversingSwapMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.SubChainSwapMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.SwapMove<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.ChainedSwapMove<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.TailChainSwapMove<Solution_>
  - org.optaplanner.core.impl.phase.scope.AbstractMoveScope<Solution_>
    - org.optaplanner.core.impl.constructionheuristic.scope.ConstructionHeuristicMoveScope<Solution_>
    - org.optaplanner.core.impl.localsearch.scope.LocalSearchMoveScope<Solution_>
  - org.optaplanner.core.impl.phase.AbstractPhase<Solution_> (implements org.optaplanner.core.impl.phase.Phase<Solution_>)
    - org.optaplanner.core.impl.constructionheuristic.DefaultConstructionHeuristicPhase<Solution_> (implements org.optaplanner.core.impl.constructionheuristic.ConstructionHeuristicPhase<Solution_>)
    - org.optaplanner.core.impl.phase.custom.DefaultCustomPhase<Solution_> (implements org.optaplanner.core.impl.phase.custom.CustomPhase<Solution_>)
    - org.optaplanner.core.impl.exhaustivesearch.DefaultExhaustiveSearchPhase<Solution_> (implements org.optaplanner.core.impl.exhaustivesearch.ExhaustiveSearchPhase<Solution_>)
    - org.optaplanner.core.impl.localsearch.DefaultLocalSearchPhase<Solution_> (implements org.optaplanner.core.impl.localsearch.LocalSearchPhase<Solution_>, org.optaplanner.core.impl.localsearch.event.LocalSearchPhaseLifecycleListener<Solution_>)
    - org.optaplanner.core.impl.partitionedsearch.DefaultPartitionedSearchPhase<Solution_> (implements org.optaplanner.core.impl.partitionedsearch.PartitionedSearchPhase<Solution_>, org.optaplanner.core.impl.partitionedsearch.event.PartitionedSearchPhaseLifecycleListener<Solution_>)
    - org.optaplanner.core.impl.phase.NoChangePhase<Solution_>
  - org.optaplanner.core.impl.phase.AbstractPhaseFactory<Solution_,​PhaseConfig_> (implements org.optaplanner.core.impl.phase.PhaseFactory<Solution_>)
    - org.optaplanner.core.impl.constructionheuristic.DefaultConstructionHeuristicPhaseFactory<Solution_>
    - org.optaplanner.core.impl.phase.custom.DefaultCustomPhaseFactory<Solution_>
    - org.optaplanner.core.impl.exhaustivesearch.DefaultExhaustiveSearchPhaseFactory<Solution_>
    - org.optaplanner.core.impl.localsearch.DefaultLocalSearchPhaseFactory<Solution_>
    - org.optaplanner.core.impl.partitionedsearch.DefaultPartitionedSearchPhaseFactory<Solution_>
    - org.optaplanner.core.impl.phase.NoChangePhaseFactory<Solution_>
  - org.optaplanner.core.impl.phase.scope.AbstractPhaseScope<Solution_>
    - org.optaplanner.core.impl.constructionheuristic.scope.ConstructionHeuristicPhaseScope<Solution_>
    - org.optaplanner.core.impl.phase.custom.scope.CustomPhaseScope<Solution_>
    - org.optaplanner.core.impl.exhaustivesearch.scope.ExhaustiveSearchPhaseScope<Solution_>
    - org.optaplanner.core.impl.localsearch.scope.LocalSearchPhaseScope<Solution_>
    - org.optaplanner.core.impl.partitionedsearch.scope.PartitionedSearchPhaseScope<Solution_>
  - org.optaplanner.core.api.score.AbstractScore<Score_> (implements org.optaplanner.core.api.score.Score<Score_>, java.io.Serializable)
    - org.optaplanner.core.api.score.AbstractBendableScore<Score_>
      - org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore
      - org.optaplanner.core.api.score.buildin.bendablelong.BendableLongScore
      - org.optaplanner.core.api.score.buildin.bendable.BendableScore
    - org.optaplanner.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScore
    - org.optaplanner.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScore
    - org.optaplanner.core.api.score.buildin.hardmediumsoft.HardMediumSoftScore
    - org.optaplanner.core.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScore
    - org.optaplanner.core.api.score.buildin.hardsoftlong.HardSoftLongScore
    - org.optaplanner.core.api.score.buildin.hardsoft.HardSoftScore
    - org.optaplanner.core.api.score.buildin.simplebigdecimal.SimpleBigDecimalScore
    - org.optaplanner.core.api.score.buildin.simplelong.SimpleLongScore
    - org.optaplanner.core.api.score.buildin.simple.SimpleScore
  - org.optaplanner.core.impl.score.definition.AbstractScoreDefinition<Score_> (implements org.optaplanner.core.impl.score.definition.ScoreDefinition<Score_>)
    - org.optaplanner.core.impl.score.definition.AbstractBendableScoreDefinition<Score_> (implements org.optaplanner.core.impl.score.definition.ScoreDefinition<Score_>)
      - org.optaplanner.core.impl.score.buildin.bendablebigdecimal.BendableBigDecimalScoreDefinition
      - org.optaplanner.core.impl.score.buildin.bendablelong.BendableLongScoreDefinition
      - org.optaplanner.core.impl.score.buildin.bendable.BendableScoreDefinition
    - org.optaplanner.core.impl.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreDefinition
    - org.optaplanner.core.impl.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreDefinition
    - org.optaplanner.core.impl.score.buildin.hardmediumsoft.HardMediumSoftScoreDefinition
    - org.optaplanner.core.impl.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreDefinition
    - org.optaplanner.core.impl.score.buildin.hardsoftlong.HardSoftLongScoreDefinition
    - org.optaplanner.core.impl.score.buildin.hardsoft.HardSoftScoreDefinition
    - org.optaplanner.core.impl.score.buildin.simplebigdecimal.SimpleBigDecimalScoreDefinition
    - org.optaplanner.core.impl.score.buildin.simplelong.SimpleLongScoreDefinition
    - org.optaplanner.core.impl.score.buildin.simple.SimpleScoreDefinition
  - org.optaplanner.core.impl.score.director.AbstractScoreDirector<Solution_,​Score_,​Factory_> (implements java.lang.Cloneable, org.optaplanner.core.impl.score.director.InnerScoreDirector<Solution_,​Score_>)
    - org.optaplanner.core.impl.score.director.stream.ConstraintStreamScoreDirector<Solution_,​Score_>
    - org.optaplanner.core.impl.score.director.drools.DroolsScoreDirector<Solution_,​Score_>
      - org.optaplanner.core.impl.score.director.drools.testgen.TestGenDroolsScoreDirector<Solution_,​Score_>
    - org.optaplanner.core.impl.score.director.easy.EasyScoreDirector<Solution_,​Score_>
    - org.optaplanner.core.impl.score.director.incremental.IncrementalScoreDirector<Solution_,​Score_>
  - org.optaplanner.core.impl.score.director.AbstractScoreDirectorFactory<Solution_,​Score_> (implements org.optaplanner.core.impl.score.director.InnerScoreDirectorFactory<Solution_,​Score_>)
    - org.optaplanner.core.impl.score.director.stream.ConstraintStreamScoreDirectorFactory<Solution_,​Score_>
    - org.optaplanner.core.impl.score.director.drools.DroolsScoreDirectorFactory<Solution_,​Score_>
      - org.optaplanner.core.impl.score.director.drools.testgen.TestGenDroolsScoreDirectorFactory<Solution_,​Score_>
    - org.optaplanner.core.impl.score.director.easy.EasyScoreDirectorFactory<Solution_,​Score_>
    - org.optaplanner.core.impl.score.director.incremental.IncrementalScoreDirectorFactory<Solution_,​Score_>
  - org.optaplanner.persistence.jpa.impl.score.AbstractScoreHibernateType (implements org.hibernate.usertype.CompositeUserType)
    - org.optaplanner.persistence.jpa.impl.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHibernateType (implements org.hibernate.usertype.ParameterizedType)
    - org.optaplanner.persistence.jpa.impl.score.buildin.bendablelong.BendableLongScoreHibernateType (implements org.hibernate.usertype.ParameterizedType)
    - org.optaplanner.persistence.jpa.impl.score.buildin.bendable.BendableScoreHibernateType (implements org.hibernate.usertype.ParameterizedType)
    - org.optaplanner.persistence.jpa.impl.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreHibernateType
    - org.optaplanner.persistence.jpa.impl.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreHibernateType
    - org.optaplanner.persistence.jpa.impl.score.buildin.hardmediumsoft.HardMediumSoftScoreHibernateType
    - org.optaplanner.persistence.jpa.impl.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreHibernateType
    - org.optaplanner.persistence.jpa.impl.score.buildin.hardsoftlong.HardSoftLongScoreHibernateType
    - org.optaplanner.persistence.jpa.impl.score.buildin.hardsoft.HardSoftScoreHibernateType
    - org.optaplanner.persistence.jpa.impl.score.buildin.simplebigdecimal.SimpleBigDecimalScoreHibernateType
    - org.optaplanner.persistence.jpa.impl.score.buildin.simplelong.SimpleLongScoreHibernateType
    - org.optaplanner.persistence.jpa.impl.score.buildin.simple.SimpleScoreHibernateType
  - org.optaplanner.core.impl.score.holder.AbstractScoreHolder<Score_> (implements org.optaplanner.core.api.score.holder.ScoreHolder<Score_>)
    - org.optaplanner.core.impl.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder)
    - org.optaplanner.core.impl.score.buildin.bendablelong.BendableLongScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.bendablelong.BendableLongScoreHolder)
    - org.optaplanner.core.impl.score.buildin.bendable.BendableScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.bendable.BendableScoreHolder)
    - org.optaplanner.core.impl.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreHolder)
    - org.optaplanner.core.impl.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreHolder)
    - org.optaplanner.core.impl.score.buildin.hardmediumsoft.HardMediumSoftScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.hardmediumsoft.HardMediumSoftScoreHolder)
    - org.optaplanner.core.impl.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreHolder)
    - org.optaplanner.core.impl.score.buildin.hardsoftlong.HardSoftLongScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.hardsoftlong.HardSoftLongScoreHolder)
    - org.optaplanner.core.impl.score.buildin.hardsoft.HardSoftScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.hardsoft.HardSoftScoreHolder)
    - org.optaplanner.core.impl.score.buildin.simplebigdecimal.SimpleBigDecimalScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.simplebigdecimal.SimpleBigDecimalScoreHolder)
    - org.optaplanner.core.impl.score.buildin.simplelong.SimpleLongScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.simplelong.SimpleLongScoreHolder)
    - org.optaplanner.core.impl.score.buildin.simple.SimpleScoreHolderImpl (implements org.optaplanner.core.api.score.buildin.simple.SimpleScoreHolder)
  - org.optaplanner.core.impl.score.holder.AbstractScoreHolder.ConstraintActivationUnMatchListener (implements java.lang.Runnable)
  - org.optaplanner.persistence.jsonb.api.score.AbstractScoreJsonbAdapter<Score_> (implements javax.json.bind.adapter.JsonbAdapter<Original,​Adapted>)
    - org.optaplanner.persistence.jsonb.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.bendablelong.BendableLongScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.bendable.BendableScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.hardmediumsoft.HardMediumSoftScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.hardsoftlong.HardSoftLongScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.hardsoft.HardSoftScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.simplebigdecimal.SimpleBigDecimalScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.simplelong.SimpleLongScoreJsonbAdapter
    - org.optaplanner.persistence.jsonb.api.score.buildin.simple.SimpleScoreJsonbAdapter
  - org.optaplanner.test.impl.score.AbstractScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.bendablebigdecimal.BendableBigDecimalScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.bendablelong.BendableLongScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.bendable.BendableScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.hardmediumsoft.HardMediumSoftScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.hardsoftlong.HardSoftLongScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.hardsoft.HardSoftScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.simplebigdecimal.SimpleBigDecimalScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.simplelong.SimpleLongScoreVerifier<Solution_>
    - org.optaplanner.test.impl.score.buildin.simple.SimpleScoreVerifier<Solution_>
  - org.optaplanner.persistence.xstream.api.score.AbstractScoreXStreamConverter (implements com.thoughtworks.xstream.converters.Converter)
    - org.optaplanner.persistence.xstream.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.bendablelong.BendableLongScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.bendable.BendableScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.hardmediumsoft.HardMediumSoftScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.hardsoftlong.HardSoftLongScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.hardsoft.HardSoftScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.simplebigdecimal.SimpleBigDecimalScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.simplelong.SimpleLongScoreXStreamConverter
    - org.optaplanner.persistence.xstream.api.score.buildin.simple.SimpleScoreXStreamConverter
  - org.optaplanner.core.impl.heuristic.selector.AbstractSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.Selector<Solution_>)
    - org.optaplanner.core.impl.heuristic.selector.entity.AbstractEntitySelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.entity.EntitySelector<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.entity.decorator.AbstractCachingEntitySelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>)
        - org.optaplanner.core.impl.heuristic.selector.entity.decorator.CachingEntitySelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.entity.decorator.ShufflingEntitySelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.entity.decorator.SortingEntitySelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.decorator.FilteringEntitySelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.FromSolutionEntitySelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.mimic.MimicRecordingEntitySelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.entity.mimic.EntityMimicRecorder<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.entity.mimic.MimicReplayingEntitySelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.nearby.NearEntityNearbyEntitySelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.decorator.ProbabilityEntitySelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.entity.decorator.SelectedCountLimitEntitySelector<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.AbstractMoveSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.move.MoveSelector<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.move.decorator.AbstractCachingMoveSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>)
        - org.optaplanner.core.impl.heuristic.selector.move.decorator.CachingMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.decorator.ShufflingMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.decorator.SortingMoveSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.move.composite.CompositeMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.composite.CartesianProductMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.composite.UnionMoveSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.move.decorator.FilteringMoveSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.move.generic.GenericMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.ChangeMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.KOptMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.PillarChangeMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.PillarSwapMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.SubChainChangeMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.SubChainSwapMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.SwapMoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.move.generic.chained.TailChainSwapMoveSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.move.factory.MoveIteratorFactoryToMoveSelectorBridge<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.move.factory.MoveListFactoryToMoveSelectorBridge<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.move.decorator.ProbabilityMoveSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.move.decorator.SelectedCountLimitMoveSelector<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.value.AbstractValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.ValueSelector<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.AbstractCachingValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>)
        - org.optaplanner.core.impl.heuristic.selector.value.decorator.CachingValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>)
        - org.optaplanner.core.impl.heuristic.selector.value.decorator.ShufflingValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>)
        - org.optaplanner.core.impl.heuristic.selector.value.decorator.SortingValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.DowncastingValueSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.EntityDependentSortingValueSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.FilteringValueSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.value.decorator.EntityIndependentFilteringValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.value.FromEntityPropertyValueSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.value.FromSolutionPropertyValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.InitializedValueSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.value.decorator.EntityIndependentInitializedValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.value.mimic.MimicRecordingValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>, org.optaplanner.core.impl.heuristic.selector.value.mimic.ValueMimicRecorder<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.value.mimic.MimicReplayingValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.value.nearby.NearEntityNearbyValueSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.ProbabilityValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>, org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>)
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.ReinitializeVariableValueSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.SelectedCountLimitValueSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_>)
    - org.optaplanner.core.impl.heuristic.selector.entity.pillar.DefaultPillarSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.entity.pillar.PillarSelector<Solution_>, org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>)
    - org.optaplanner.core.impl.heuristic.selector.value.chained.DefaultSubChainSelector<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>, org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelector<Solution_>)
  - org.optaplanner.core.impl.solver.AbstractSolver<Solution_> (implements org.optaplanner.core.api.solver.Solver<Solution_>)
    - org.optaplanner.core.impl.solver.DefaultSolver<Solution_>
    - org.optaplanner.core.impl.partitionedsearch.PartitionSolver<Solution_>
  - org.optaplanner.core.impl.phase.scope.AbstractStepScope<Solution_>
    - org.optaplanner.core.impl.constructionheuristic.scope.ConstructionHeuristicStepScope<Solution_>
    - org.optaplanner.core.impl.phase.custom.scope.CustomStepScope<Solution_>
    - org.optaplanner.core.impl.exhaustivesearch.scope.ExhaustiveSearchStepScope<Solution_>
    - org.optaplanner.core.impl.localsearch.scope.LocalSearchStepScope<Solution_>
    - org.optaplanner.core.impl.partitionedsearch.scope.PartitionedSearchStepScope<Solution_>
  - org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.size.AbstractTabuSizeStrategy<Solution_> (implements org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.size.TabuSizeStrategy<Solution_>)
    - org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.size.EntityRatioTabuSizeStrategy<Solution_>
    - org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.size.FixedTabuSizeStrategy<Solution_>
    - org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.size.ValueRatioTabuSizeStrategy<Solution_>
  - org.optaplanner.core.impl.domain.valuerange.AbstractUncountableValueRange<T> (implements org.optaplanner.core.api.domain.valuerange.ValueRange<T>)
    - org.optaplanner.core.impl.domain.valuerange.buildin.primdouble.DoubleValueRange
  - org.optaplanner.core.impl.domain.valuerange.descriptor.AbstractValueRangeDescriptor<Solution_> (implements org.optaplanner.core.impl.domain.valuerange.descriptor.ValueRangeDescriptor<Solution_>)
    - org.optaplanner.core.impl.domain.valuerange.descriptor.AbstractFromPropertyValueRangeDescriptor<Solution_>
      - org.optaplanner.core.impl.domain.valuerange.descriptor.FromEntityPropertyValueRangeDescriptor<Solution_>
      - org.optaplanner.core.impl.domain.valuerange.descriptor.FromSolutionPropertyValueRangeDescriptor<Solution_> (implements org.optaplanner.core.impl.domain.valuerange.descriptor.EntityIndependentValueRangeDescriptor<Solution_>)
    - org.optaplanner.core.impl.domain.valuerange.descriptor.CompositeValueRangeDescriptor<Solution_> (implements org.optaplanner.core.impl.domain.valuerange.descriptor.EntityIndependentValueRangeDescriptor<Solution_>)
  - org.optaplanner.core.impl.localsearch.decider.acceptor.AcceptorFactory<Solution_>
  - org.optaplanner.core.impl.domain.common.AlphabeticMemberComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.domain.variable.anchor.AnchorVariableDemand<Solution_> (implements org.optaplanner.core.impl.domain.variable.supply.Demand<Solution_,​Supply_>)
  - org.optaplanner.core.impl.domain.variable.anchor.AnchorVariableListener<Solution_> (implements org.optaplanner.core.impl.domain.variable.anchor.AnchorVariableSupply, org.optaplanner.core.api.domain.variable.VariableListener<Solution_,​Entity_>)
  - org.optaplanner.core.impl.score.stream.bavet.common.BavetAbstractNode (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetNode)
    - org.optaplanner.core.impl.score.stream.bavet.bi.BavetAbstractBiNode<A,​B>
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetFilterBiNode<A,​B>
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetGroupBiNode<GroupKey_,​ResultContainer_,​Result_>
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetJoinBiNode<A,​B> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinNode)
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetJoinBridgeBiNode<A,​B> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeNode)
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetScoringBiNode<A,​B> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetScoringNode)
    - org.optaplanner.core.impl.score.stream.bavet.tri.BavetAbstractTriNode<A,​B,​C>
      - org.optaplanner.core.impl.score.stream.bavet.tri.BavetFilterTriNode<A,​B,​C>
      - org.optaplanner.core.impl.score.stream.bavet.tri.BavetJoinTriNode<A,​B,​C> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinNode)
      - org.optaplanner.core.impl.score.stream.bavet.tri.BavetScoringTriNode<A,​B,​C> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetScoringNode)
    - org.optaplanner.core.impl.score.stream.bavet.uni.BavetAbstractUniNode<A>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetFilterUniNode<A>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetFromUniNode<A>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetGroupBridgeUniNode<A,​NewA,​ResultContainer_,​NewB>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetJoinBridgeUniNode<A> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeNode)
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetScoringUniNode<A> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetScoringNode)
  - org.optaplanner.core.impl.score.stream.bavet.common.BavetAbstractTuple (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetTuple)
    - org.optaplanner.core.impl.score.stream.bavet.bi.BavetAbstractBiTuple<A,​B>
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetFilterBiTuple<A,​B>
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetGroupBiTuple<GroupKey_,​ResultContainer_,​Result_> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetGroupTuple)
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetJoinBiTuple<A,​B> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinTuple)
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetJoinBridgeBiTuple<A,​B> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeTuple)
      - org.optaplanner.core.impl.score.stream.bavet.bi.BavetScoringBiTuple<A,​B> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetScoringTuple)
    - org.optaplanner.core.impl.score.stream.bavet.tri.BavetAbstractTriTuple<A,​B,​C>
      - org.optaplanner.core.impl.score.stream.bavet.tri.BavetFilterTriTuple<A,​B,​C>
      - org.optaplanner.core.impl.score.stream.bavet.tri.BavetJoinTriTuple<A,​B,​C> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinTuple)
      - org.optaplanner.core.impl.score.stream.bavet.tri.BavetScoringTriTuple<A,​B,​C> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetScoringTuple)
    - org.optaplanner.core.impl.score.stream.bavet.uni.BavetAbstractUniTuple<A>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetFilterUniTuple<A>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetFromUniTuple<A>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetGroupBridgeUniTuple<A,​NewA,​ResultContainer_,​NewB>
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetJoinBridgeUniTuple<A> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeTuple)
      - org.optaplanner.core.impl.score.stream.bavet.uni.BavetScoringUniTuple<A> (implements org.optaplanner.core.impl.score.stream.bavet.common.BavetScoringTuple)
  - org.optaplanner.core.impl.score.stream.bavet.BavetConstraintSession<Solution_,​Score_> (implements org.optaplanner.core.impl.score.stream.ConstraintSession<Solution_,​Score_>)
  - org.optaplanner.core.impl.score.stream.bavet.BavetConstraintSessionFactory<Solution_,​Score_> (implements org.optaplanner.core.impl.score.stream.ConstraintSessionFactory<Solution_,​Score_>)
  - org.optaplanner.core.impl.score.stream.bavet.common.index.BavetIndex<Tuple_>
    - org.optaplanner.core.impl.score.stream.bavet.common.index.BavetEqualsAndComparisonIndex<Tuple_>
    - org.optaplanner.core.impl.score.stream.bavet.common.index.BavetEqualsIndex<Tuple_>
    - org.optaplanner.core.impl.score.stream.bavet.common.index.BavetNoneIndex<Tuple_>
  - org.optaplanner.core.impl.score.stream.bavet.common.index.BavetIndexFactory
  - org.optaplanner.core.impl.score.stream.bavet.common.index.BavetIndexKey
  - org.optaplanner.core.impl.score.stream.bavet.common.BavetNodeBuildPolicy<Solution_>
  - org.optaplanner.benchmark.impl.aggregator.BenchmarkAggregator
  - org.optaplanner.benchmark.impl.report.BenchmarkReport
  - org.optaplanner.benchmark.impl.report.BenchmarkReportFactory
  - org.optaplanner.benchmark.impl.result.BenchmarkResultIO
  - org.optaplanner.persistence.jpa.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.bendablelong.BendableLongScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.bendable.BendableScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.core.impl.solver.recaller.BestSolutionRecallerFactory
  - org.optaplanner.core.impl.heuristic.selector.common.nearby.BetaDistributionNearbyRandom (implements org.optaplanner.core.impl.heuristic.selector.common.nearby.NearbyRandom)
  - org.optaplanner.core.impl.score.stream.drools.common.BiTuple<A,​B> (implements org.optaplanner.core.impl.score.stream.drools.common.FactTuple)
  - org.optaplanner.core.impl.heuristic.selector.common.nearby.BlockDistributionNearbyRandom (implements org.optaplanner.core.impl.heuristic.selector.common.nearby.NearbyRandom)
  - org.optaplanner.core.impl.exhaustivesearch.node.comparator.BreadthFirstNodeComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.domain.lookup.ClassAndPlanningIdComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.domain.variable.inverserelation.CollectionInverseVariableDemand<Solution_> (implements org.optaplanner.core.impl.domain.variable.supply.Demand<Solution_,​Supply_>)
  - org.optaplanner.core.impl.domain.variable.inverserelation.CollectionInverseVariableListener<Solution_> (implements org.optaplanner.core.impl.domain.variable.inverserelation.CollectionInverseVariableSupply, org.optaplanner.core.api.domain.variable.VariableListener<Solution_,​Entity_>)
  - org.optaplanner.core.impl.heuristic.selector.common.decorator.ComparatorSelectionSorter<Solution_,​T> (implements org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionSorter<Solution_,​T>)
  - java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable)
    - java.awt.Container
      - javax.swing.JComponent (implements java.io.Serializable)
        - javax.swing.AbstractButton (implements java.awt.ItemSelectable, javax.swing.SwingConstants)
          - javax.swing.JToggleButton (implements javax.accessibility.Accessible)
            - javax.swing.JCheckBox (implements javax.accessibility.Accessible)
              - org.optaplanner.benchmark.impl.aggregator.swingui.MixedCheckBox
        - javax.swing.JTree (implements javax.accessibility.Accessible, javax.swing.Scrollable)
          - org.optaplanner.benchmark.impl.aggregator.swingui.CheckBoxTree
      - java.awt.Window (implements javax.accessibility.Accessible)
        - java.awt.Frame (implements java.awt.MenuContainer)
          - javax.swing.JFrame (implements javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants)
            - org.optaplanner.benchmark.impl.aggregator.swingui.BenchmarkAggregatorFrame
  - org.optaplanner.core.impl.heuristic.move.CompositeMove<Solution_> (implements org.optaplanner.core.impl.heuristic.move.Move<Solution_>)
  - org.optaplanner.core.impl.heuristic.selector.common.decorator.CompositeSelectionFilter<Solution_,​T> (implements org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionFilter<Solution_,​T>)
  - org.optaplanner.core.config.util.ConfigUtils
  - org.optaplanner.core.api.score.stream.ConstraintCollectors
  - org.optaplanner.core.impl.domain.constraintweight.descriptor.ConstraintConfigurationDescriptor<Solution_>
  - org.optaplanner.core.impl.score.stream.drools.common.ConstraintGraph
  - org.optaplanner.core.api.score.constraint.ConstraintMatch<Score_> (implements java.lang.Comparable<T>)
  - org.optaplanner.core.impl.domain.constraintweight.descriptor.ConstraintWeightDescriptor<Solution_>
  - org.optaplanner.core.impl.constructionheuristic.decider.ConstructionHeuristicDecider<Solution_>
    - org.optaplanner.core.impl.constructionheuristic.decider.MultiThreadedConstructionHeuristicDecider<Solution_>
  - org.optaplanner.core.impl.constructionheuristic.decider.forager.ConstructionHeuristicForagerFactory<Solution_>
  - org.optaplanner.core.impl.domain.variable.custom.CustomShadowVariableDemand<Solution_> (implements org.optaplanner.core.impl.domain.variable.supply.Demand<Solution_,​Supply_>)
  - org.optaplanner.core.impl.score.stream.bi.DefaultBiConstraintCollector<A,​B,​ResultContainer_,​Result_> (implements org.optaplanner.core.api.score.stream.bi.BiConstraintCollector<A,​B,​ResultContainer_,​Result_>)
  - org.optaplanner.core.impl.score.constraint.DefaultConstraintMatchTotal<Score_> (implements java.lang.Comparable<T>, org.optaplanner.core.api.score.constraint.ConstraintMatchTotal<Score_>)
  - org.optaplanner.test.impl.score.stream.DefaultConstraintVerifier<ConstraintProvider_,​Solution_,​Score_> (implements org.optaplanner.test.api.score.stream.ConstraintVerifier<ConstraintProvider_,​Solution_>)
  - org.optaplanner.core.impl.score.constraint.DefaultIndictment<Score_> (implements org.optaplanner.core.api.score.constraint.Indictment<Score_>)
  - org.optaplanner.test.impl.score.stream.DefaultMultiConstraintAssertion<Solution_,​Score_> (implements org.optaplanner.test.api.score.stream.MultiConstraintAssertion)
  - org.optaplanner.test.impl.score.stream.DefaultMultiConstraintVerification<Solution_,​Score_> (implements org.optaplanner.test.api.score.stream.MultiConstraintVerification<Solution_>)
  - org.optaplanner.benchmark.impl.DefaultPlannerBenchmark (implements org.optaplanner.benchmark.api.PlannerBenchmark)
  - org.optaplanner.core.impl.score.stream.quad.DefaultQuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> (implements org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_>)
  - org.optaplanner.core.impl.solver.random.DefaultRandomFactory (implements org.optaplanner.core.impl.solver.random.RandomFactory)
  - org.optaplanner.core.impl.score.DefaultScoreExplanation<Solution_,​Score_> (implements org.optaplanner.core.api.score.ScoreExplanation<Solution_,​Score_>)
  - org.optaplanner.core.impl.score.DefaultScoreManager<Solution_,​Score_> (implements org.optaplanner.core.api.score.ScoreManager<Solution_,​Score_>)
  - org.optaplanner.test.impl.score.stream.DefaultSingleConstraintAssertion<Solution_,​Score_> (implements org.optaplanner.test.api.score.stream.SingleConstraintAssertion)
  - org.optaplanner.test.impl.score.stream.DefaultSingleConstraintVerification<Solution_,​Score_> (implements org.optaplanner.test.api.score.stream.SingleConstraintVerification<Solution_>)
  - org.optaplanner.core.impl.solver.DefaultSolverFactory<Solution_> (implements org.optaplanner.core.api.solver.SolverFactory<Solution_>)
  - org.optaplanner.core.impl.solver.DefaultSolverFactory.MoveThreadCountResolver
  - org.optaplanner.core.impl.solver.DefaultSolverJob<Solution_,​ProblemId_> (implements java.util.concurrent.Callable<V>, org.optaplanner.core.api.solver.SolverJob<Solution_,​ProblemId_>)
  - org.optaplanner.core.impl.solver.DefaultSolverManager<Solution_,​ProblemId_> (implements org.optaplanner.core.api.solver.SolverManager<Solution_,​ProblemId_>)
  - org.optaplanner.core.impl.solver.thread.DefaultSolverThreadFactory (implements java.util.concurrent.ThreadFactory)
  - org.optaplanner.core.impl.score.stream.tri.DefaultTriConstraintCollector<A,​B,​C,​ResultContainer_,​Result_> (implements org.optaplanner.core.api.score.stream.tri.TriConstraintCollector<A,​B,​C,​ResultContainer_,​Result_>)
  - org.optaplanner.core.impl.score.stream.uni.DefaultUniConstraintCollector<A,​ResultContainer_,​Result_> (implements org.optaplanner.core.api.score.stream.uni.UniConstraintCollector<A,​ResultContainer_,​Result_>)
  - org.optaplanner.core.impl.exhaustivesearch.node.comparator.DepthFirstNodeComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.domain.policy.DescriptorPolicy
  - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractAccumulateFunction<ResultContainer_,​InTuple,​OutTuple> (implements org.kie.api.runtime.rule.AccumulateFunction<C>)
    - org.optaplanner.core.impl.score.stream.drools.bi.DroolsBiAccumulateFunction<A,​B,​ResultContainer_,​NewA>
    - org.optaplanner.core.impl.score.stream.drools.quad.DroolsQuadAccumulateFunction<A,​B,​C,​D,​ResultContainer_,​NewA>
    - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriAccumulateFunction<A,​B,​C,​ResultContainer_,​NewA>
    - org.optaplanner.core.impl.score.stream.drools.uni.DroolsUniAccumulateFunction<A,​ResultContainer_,​NewA>
  - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractBiCollectingGroupByCollectorProcessor<ResultContainer1,​ResultContainer2,​InTuple,​KeyTuple,​OutTuple>
  - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractGroupBy<InTuple,​OutTuple> (implements java.io.Serializable)
  - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractGroupByAccumulator<InTuple> (implements org.drools.core.spi.Accumulator)
    - org.optaplanner.core.impl.score.stream.drools.bi.DroolsBiGroupByAccumulator<A,​B,​NewA,​NewB>
    - org.optaplanner.core.impl.score.stream.drools.bi.DroolsBiToQuadGroupByAccumulator<A,​B,​NewA,​NewB,​NewC,​NewD>
    - org.optaplanner.core.impl.score.stream.drools.bi.DroolsBiToTriGroupByAccumulator<A,​B,​NewA,​NewB,​NewC>
    - org.optaplanner.core.impl.score.stream.drools.quad.DroolsQuadGroupByAccumulator<A,​B,​C,​D,​NewA,​NewB,​NewC,​NewD>
    - org.optaplanner.core.impl.score.stream.drools.quad.DroolsQuadToBiGroupByAccumulator<A,​B,​C,​D,​NewA,​NewB>
    - org.optaplanner.core.impl.score.stream.drools.quad.DroolsQuadToTriGroupByAccumulator<A,​B,​C,​D,​NewA,​NewB,​NewC>
    - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriGroupByAccumulator<A,​B,​C,​NewA,​NewB,​NewC>
    - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriToBiGroupByAccumulator<A,​B,​C,​NewA,​NewB>
    - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriToQuadGroupByAccumulator<A,​B,​C,​NewA,​NewB,​NewC,​NewD>
    - org.optaplanner.core.impl.score.stream.drools.uni.DroolsUniToBiGroupByAccumulator<A,​NewA,​NewB>
    - org.optaplanner.core.impl.score.stream.drools.uni.DroolsUniToQuadGroupByAccumulator<A,​NewA,​NewB,​NewC,​NewD>
    - org.optaplanner.core.impl.score.stream.drools.uni.DroolsUniToTriGroupByAccumulator<A,​NewA,​NewB,​NewC>
  - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractUniCollectingGroupByCollectorProcessor<ResultContainer,​InTuple,​KeyTuple,​OutTuple>
  - org.optaplanner.core.impl.score.stream.drools.common.DroolsAccumulateContext<ResultContainer_> (implements java.io.Serializable)
  - org.optaplanner.core.impl.score.stream.drools.DroolsConstraintSession<Solution_,​Score_> (implements org.optaplanner.core.impl.score.stream.ConstraintSession<Solution_,​Score_>)
  - org.optaplanner.core.impl.score.stream.drools.DroolsConstraintSessionFactory<Solution_,​Score_> (implements org.optaplanner.core.impl.score.stream.ConstraintSessionFactory<Solution_,​Score_>)
  - org.optaplanner.core.impl.io.jaxb.ElementNamespaceOverride
  - org.optaplanner.core.impl.domain.entity.descriptor.EntityDescriptor<Solution_>
  - org.optaplanner.core.impl.domain.lookup.EqualsLookUpStrategy (implements org.optaplanner.core.impl.domain.lookup.LookUpStrategy)
  - java.util.EventObject (implements java.io.Serializable)
    - org.optaplanner.core.api.solver.event.BestSolutionChangedEvent<Solution_>
  - org.optaplanner.core.impl.exhaustivesearch.decider.ExhaustiveSearchDecider<Solution_> (implements org.optaplanner.core.impl.exhaustivesearch.event.ExhaustiveSearchPhaseLifecycleListener<Solution_>)
  - org.optaplanner.core.impl.exhaustivesearch.node.ExhaustiveSearchLayer
  - org.optaplanner.core.impl.exhaustivesearch.node.ExhaustiveSearchNode
  - org.optaplanner.core.impl.domain.variable.anchor.ExternalizedAnchorVariableSupply<Solution_> (implements org.optaplanner.core.impl.domain.variable.anchor.AnchorVariableSupply, org.optaplanner.core.impl.domain.variable.listener.SourcedVariableListener<Solution_,​Entity_>)
  - org.optaplanner.core.impl.domain.variable.inverserelation.ExternalizedCollectionInverseVariableSupply<Solution_> (implements org.optaplanner.core.impl.domain.variable.inverserelation.CollectionInverseVariableSupply, org.optaplanner.core.impl.domain.variable.listener.SourcedVariableListener<Solution_,​Entity_>)
  - org.optaplanner.core.impl.domain.variable.inverserelation.ExternalizedSingletonInverseVariableSupply<Solution_> (implements org.optaplanner.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply, org.optaplanner.core.impl.domain.variable.listener.SourcedVariableListener<Solution_,​Entity_>)
  - org.optaplanner.core.impl.heuristic.selector.common.decorator.FairSelectorProbabilityWeightFactory<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionProbabilityWeightFactory<Solution_,​T>)
  - org.optaplanner.core.impl.domain.solution.cloner.FieldAccessingSolutionCloner<Solution_> (implements org.optaplanner.core.api.domain.solution.cloner.SolutionCloner<Solution_>)
  - org.optaplanner.core.impl.domain.solution.cloner.FieldAccessingSolutionCloner.FieldAccessingSolutionClonerRun
  - org.optaplanner.core.impl.domain.solution.cloner.FieldAccessingSolutionCloner.Unprocessed
  - org.optaplanner.benchmark.impl.loader.FileProblemProvider<Solution_> (implements org.optaplanner.benchmark.impl.loader.ProblemProvider<Solution_>)
  - org.optaplanner.core.impl.heuristic.selector.common.decorator.FixedSelectorProbabilityWeightFactory<Solution_,​Selector_> (implements org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionProbabilityWeightFactory<Solution_,​T>)
  - org.optaplanner.core.impl.score.comparator.FlatteningHardSoftScoreComparator (implements java.util.Comparator<T>)
  - java.text.Format (implements java.lang.Cloneable, java.io.Serializable)
    - java.text.NumberFormat
      - org.optaplanner.benchmark.impl.statistic.common.MillisecondsSpentNumberFormat
  - org.optaplanner.core.impl.io.jaxb.GenericJaxbIO<T> (implements org.optaplanner.core.impl.io.jaxb.JaxbIO<T>)
  - org.optaplanner.benchmark.impl.statistic.common.GraphSupport
  - org.optaplanner.persistence.jpa.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.hardmediumsoft.HardMediumSoftScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.hardsoftlong.HardSoftLongScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.hardsoft.HardSoftScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.core.impl.heuristic.HeuristicConfigPolicy<Solution_>
  - org.optaplanner.core.impl.domain.lookup.ImmutableLookUpStrategy (implements org.optaplanner.core.impl.domain.lookup.LookUpStrategy)
  - org.optaplanner.core.impl.score.trend.InitializingScoreTrend
  - org.optaplanner.core.impl.score.stream.InnerConstraintFactory<Solution_> (implements org.optaplanner.core.api.score.stream.ConstraintFactory)
    - org.optaplanner.core.impl.score.stream.bavet.BavetConstraintFactory<Solution_>
    - org.optaplanner.core.impl.score.stream.drools.DroolsConstraintFactory<Solution_>
  - org.optaplanner.benchmark.impl.loader.InstanceProblemProvider<Solution_> (implements org.optaplanner.benchmark.impl.loader.ProblemProvider<Solution_>)
  - org.optaplanner.persistence.jackson.impl.domain.solution.JacksonSolutionFileIO<Solution_> (implements org.optaplanner.persistence.common.api.domain.solution.SolutionFileIO<Solution_>)
  - org.optaplanner.persistence.jaxb.impl.domain.solution.JaxbSolutionFileIO<Solution_> (implements org.optaplanner.persistence.common.api.domain.solution.SolutionFileIO<Solution_>)
  - org.optaplanner.core.api.score.stream.Joiners
  - com.fasterxml.jackson.databind.JsonDeserializer<T> (implements com.fasterxml.jackson.databind.deser.NullValueProvider)
    - org.optaplanner.persistence.jackson.api.score.AbstractScoreJacksonDeserializer<Score_>
      - org.optaplanner.persistence.jackson.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.bendablelong.BendableLongScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.bendable.BendableScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoft.HardMediumSoftScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardsoftlong.HardSoftLongScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardsoft.HardSoftScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.simplebigdecimal.SimpleBigDecimalScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.simplelong.SimpleLongScoreJacksonDeserializer
      - org.optaplanner.persistence.jackson.api.score.buildin.simple.SimpleScoreJacksonDeserializer
    - org.optaplanner.persistence.jackson.api.score.PolymorphicScoreJacksonDeserializer
  - com.fasterxml.jackson.databind.JsonSerializer<T> (implements com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitable)
    - org.optaplanner.persistence.jackson.api.score.AbstractScoreJacksonSerializer<Score_> (implements com.fasterxml.jackson.databind.ser.ContextualSerializer)
      - org.optaplanner.persistence.jackson.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.bendablelong.BendableLongScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.bendable.BendableScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardmediumsoft.HardMediumSoftScoreJsonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardsoftlong.HardSoftLongScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.hardsoft.HardSoftScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.simplebigdecimal.SimpleBigDecimalScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.simplelong.SimpleLongScoreJacksonSerializer
      - org.optaplanner.persistence.jackson.api.score.buildin.simple.SimpleScoreJacksonSerializer
    - org.optaplanner.persistence.jackson.api.score.PolymorphicScoreJacksonSerializer
  - org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor (implements org.optaplanner.core.impl.domain.common.accessor.MemberAccessor)
  - org.optaplanner.core.impl.heuristic.selector.common.nearby.LinearDistributionNearbyRandom (implements org.optaplanner.core.impl.heuristic.selector.common.nearby.NearbyRandom)
  - org.optaplanner.core.impl.localsearch.decider.LocalSearchDecider<Solution_>
    - org.optaplanner.core.impl.localsearch.decider.MultiThreadedLocalSearchDecider<Solution_>
  - org.optaplanner.core.impl.localsearch.decider.forager.LocalSearchForagerFactory<Solution_>
  - org.optaplanner.core.impl.domain.lookup.LookUpManager
  - org.optaplanner.core.impl.domain.lookup.LookUpStrategyResolver
  - org.optaplanner.core.impl.heuristic.selector.entity.mimic.ManualEntityMimicRecorder<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.entity.mimic.EntityMimicRecorder<Solution_>)
  - org.optaplanner.core.impl.domain.common.accessor.MemberAccessorFactory
  - org.optaplanner.benchmark.impl.statistic.memoryuse.MemoryUseMeasurement
  - org.optaplanner.core.impl.heuristic.selector.value.decorator.MovableChainedTrailingValueFilter<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionFilter<Solution_,​T>)
  - org.optaplanner.benchmark.impl.statistic.movecountperstep.MoveCountPerStepMeasurement
  - org.optaplanner.core.impl.heuristic.thread.MoveThreadOperation<Solution_>
    - org.optaplanner.core.impl.heuristic.thread.ApplyStepOperation<Solution_,​Score_>
    - org.optaplanner.core.impl.heuristic.thread.DestroyOperation<Solution_>
    - org.optaplanner.core.impl.heuristic.thread.MoveEvaluationOperation<Solution_>
    - org.optaplanner.core.impl.heuristic.thread.SetupOperation<Solution_,​Score_>
  - org.optaplanner.core.impl.heuristic.thread.MoveThreadRunner<Solution_,​Score_> (implements java.lang.Runnable)
  - org.optaplanner.core.impl.domain.solution.mutation.MutationCounter<Solution_>
  - org.optaplanner.core.impl.heuristic.selector.common.nearby.NearbyDistanceMatrix
  - org.optaplanner.core.impl.heuristic.selector.common.nearby.NearbyRandomFactory
  - org.optaplanner.core.impl.phase.custom.NoChangeCustomPhaseCommand (implements org.optaplanner.core.impl.phase.custom.CustomPhaseCommand<Solution_>)
  - org.optaplanner.core.impl.domain.lookup.NoneLookUpStrategy (implements org.optaplanner.core.impl.domain.lookup.LookUpStrategy)
  - org.optaplanner.core.impl.heuristic.selector.entity.decorator.NullValueReinitializeVariableEntityFilter<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionFilter<Solution_,​T>)
  - org.optaplanner.benchmark.impl.cli.OptaPlannerBenchmarkCli
  - org.optaplanner.persistence.jackson.api.OptaPlannerJacksonModule
  - org.optaplanner.persistence.jsonb.api.OptaPlannerJsonbConfig
  - org.optaplanner.core.impl.score.director.drools.OptaPlannerRuleEventListener (implements org.kie.internal.event.rule.RuleEventListener)
  - org.optaplanner.core.impl.exhaustivesearch.node.comparator.OptimisticBoundFirstNodeComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.heuristic.thread.OrderByMoveIndexBlockingQueue<Solution_>
  - org.optaplanner.core.impl.heuristic.thread.OrderByMoveIndexBlockingQueue.MoveResult<Solution_>
  - org.optaplanner.core.impl.exhaustivesearch.node.comparator.OriginalOrderNodeComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.heuristic.selector.common.nearby.ParabolicDistributionNearbyRandom (implements org.optaplanner.core.impl.heuristic.selector.common.nearby.NearbyRandom)
  - org.optaplanner.core.impl.partitionedsearch.queue.PartitionChangedEvent<Solution_>
  - org.optaplanner.core.impl.partitionedsearch.queue.PartitionQueue<Solution_> (implements java.lang.Iterable<T>)
  - org.optaplanner.core.impl.heuristic.selector.entity.decorator.PinEntityFilter<Solution_> (implements org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionFilter<Solution_,​T>)
  - org.optaplanner.core.impl.constructionheuristic.placer.Placement<Solution_> (implements java.lang.Iterable<T>)
  - org.optaplanner.benchmark.config.PlannerBenchmarkConfig
  - org.optaplanner.benchmark.impl.io.PlannerBenchmarkConfigIO (implements org.optaplanner.core.impl.io.jaxb.JaxbIO<T>)
  - org.optaplanner.benchmark.api.PlannerBenchmarkFactory
    - org.optaplanner.benchmark.impl.DefaultPlannerBenchmarkFactory
  - org.optaplanner.benchmark.impl.result.PlannerBenchmarkResult
  - org.optaplanner.core.impl.domain.lookup.PlanningIdLookUpStrategy (implements org.optaplanner.core.impl.domain.lookup.LookUpStrategy)
  - org.optaplanner.benchmark.impl.result.ProblemBenchmarkResult<Solution_>
  - org.optaplanner.benchmark.impl.ProblemBenchmarksFactory
  - org.optaplanner.benchmark.impl.statistic.ProblemStatistic
    - org.optaplanner.benchmark.impl.statistic.bestscore.BestScoreProblemStatistic
    - org.optaplanner.benchmark.impl.statistic.bestsolutionmutation.BestSolutionMutationProblemStatistic
    - org.optaplanner.benchmark.impl.statistic.memoryuse.MemoryUseProblemStatistic
    - org.optaplanner.benchmark.impl.statistic.movecountperstep.MoveCountPerStepProblemStatistic
    - org.optaplanner.benchmark.impl.statistic.scorecalculationspeed.ScoreCalculationSpeedProblemStatistic
    - org.optaplanner.benchmark.impl.statistic.stepscore.StepScoreProblemStatistic
  - org.optaplanner.core.impl.score.stream.drools.common.QuadTuple<A,​B,​C,​D> (implements org.optaplanner.core.impl.score.stream.drools.common.FactTuple)
  - org.optaplanner.core.impl.solver.random.RandomUtils
  - org.optaplanner.core.impl.domain.common.accessor.ReflectionBeanPropertyMemberAccessor (implements org.optaplanner.core.impl.domain.common.accessor.MemberAccessor)
  - org.optaplanner.core.impl.domain.common.accessor.ReflectionFieldMemberAccessor (implements org.optaplanner.core.impl.domain.common.accessor.MemberAccessor)
  - org.optaplanner.core.impl.domain.common.ReflectionHelper
  - org.optaplanner.core.impl.domain.common.accessor.ReflectionMethodMemberAccessor (implements org.optaplanner.core.impl.domain.common.accessor.MemberAccessor)
  - org.optaplanner.benchmark.impl.report.ReportHelper
  - org.optaplanner.core.impl.score.stream.drools.common.rules.RuleAssembly
  - org.optaplanner.benchmark.impl.measurement.ScoreDifferencePercentage
  - org.optaplanner.core.impl.score.director.ScoreDirectorFactoryFactory<Solution_,​Score_>
  - org.optaplanner.core.impl.exhaustivesearch.node.comparator.ScoreFirstNodeComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.score.inliner.ScoreInliner<Score_>
    - org.optaplanner.core.impl.score.buildin.bendablebigdecimal.BendableBigDecimalScoreInliner
    - org.optaplanner.core.impl.score.buildin.bendablelong.BendableLongScoreInliner
    - org.optaplanner.core.impl.score.buildin.bendable.BendableScoreInliner
    - org.optaplanner.core.impl.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreInliner
    - org.optaplanner.core.impl.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreInliner
    - org.optaplanner.core.impl.score.buildin.hardmediumsoft.HardMediumSoftScoreInliner
    - org.optaplanner.core.impl.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreInliner
    - org.optaplanner.core.impl.score.buildin.hardsoftlong.HardSoftLongScoreInliner
    - org.optaplanner.core.impl.score.buildin.hardsoft.HardSoftScoreInliner
    - org.optaplanner.core.impl.score.buildin.simplebigdecimal.SimpleBigDecimalScoreInliner
    - org.optaplanner.core.impl.score.buildin.simplelong.SimpleLongScoreInliner
    - org.optaplanner.core.impl.score.buildin.simple.SimpleScoreInliner
  - org.optaplanner.benchmark.impl.ranking.ScoreSubSingleBenchmarkRankingComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.score.ScoreUtils
  - org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleBridge<Solution_> (implements org.optaplanner.core.impl.phase.event.PhaseLifecycleListener<Solution_>)
  - org.optaplanner.core.impl.heuristic.selector.common.iterator.SelectionIterator<S> (implements java.util.Iterator<E>)
    - org.optaplanner.core.impl.heuristic.selector.common.iterator.CachedListRandomIterator<S>
    - org.optaplanner.core.impl.heuristic.selector.move.composite.CartesianProductMoveSelector.RandomCartesianProductMoveIterator
    - org.optaplanner.core.impl.heuristic.selector.move.composite.UnionMoveSelector.RandomUnionMoveIterator
    - org.optaplanner.core.impl.heuristic.selector.common.iterator.UpcomingSelectionIterator<S>
      - org.optaplanner.core.impl.heuristic.selector.common.iterator.AbstractOriginalChangeIterator<Solution_,​Move_>
      - org.optaplanner.core.impl.heuristic.selector.common.iterator.AbstractOriginalSwapIterator<Solution_,​Move_,​SubSelection_>
      - org.optaplanner.core.impl.heuristic.selector.common.iterator.AbstractRandomChangeIterator<Solution_,​Move_>
      - org.optaplanner.core.impl.heuristic.selector.common.iterator.AbstractRandomSwapIterator<Solution_,​Move_,​SubSelection_>
      - org.optaplanner.core.impl.heuristic.selector.move.composite.CartesianProductMoveSelector.OriginalCartesianProductMoveIterator
      - org.optaplanner.core.impl.heuristic.selector.entity.decorator.FilteringEntitySelector.JustInTimeFilteringEntityIterator
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.FilteringValueSelector.JustInTimeFilteringValueIterator
      - org.optaplanner.core.impl.heuristic.selector.value.decorator.InitializedValueSelector.JustInTimeInitializedValueIterator
  - org.optaplanner.core.impl.heuristic.selector.common.iterator.SelectionListIterator<S> (implements java.util.ListIterator<E>)
  - org.optaplanner.persistence.jpa.api.score.buildin.simplebigdecimal.SimpleBigDecimalScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.simplelong.SimpleLongScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.persistence.jpa.api.score.buildin.simple.SimpleScoreConverter (implements javax.persistence.AttributeConverter<X,​Y>)
  - org.optaplanner.benchmark.impl.result.SingleBenchmarkResult (implements org.optaplanner.benchmark.impl.result.BenchmarkResult)
  - org.optaplanner.core.impl.domain.variable.inverserelation.SingletonInverseVariableDemand<Solution_> (implements org.optaplanner.core.impl.domain.variable.supply.Demand<Solution_,​Supply_>)
  - org.optaplanner.core.impl.domain.variable.inverserelation.SingletonInverseVariableListener<Solution_> (implements org.optaplanner.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply, org.optaplanner.core.api.domain.variable.VariableListener<Solution_,​Entity_>)
  - org.optaplanner.core.impl.heuristic.selector.common.iterator.SingletonIterator<T> (implements java.util.ListIterator<E>)
  - org.optaplanner.core.impl.domain.variable.listener.support.SmallScalingOrderedSet<E> (implements java.util.Set<E>)
  - org.optaplanner.core.impl.domain.solution.descriptor.SolutionDescriptor<Solution_>
  - org.optaplanner.benchmark.config.blueprint.SolverBenchmarkBluePrintConfig
  - org.optaplanner.benchmark.impl.SolverBenchmarkFactory
  - org.optaplanner.benchmark.impl.result.SolverBenchmarkResult
  - org.optaplanner.core.impl.io.jaxb.SolverConfigIO (implements org.optaplanner.core.impl.io.jaxb.JaxbIO<T>)
  - org.optaplanner.core.impl.solver.event.SolverLifecycleListenerAdapter<Solution_> (implements org.optaplanner.core.impl.solver.event.SolverLifecycleListener<Solution_>)
    - org.optaplanner.core.impl.constructionheuristic.event.ConstructionHeuristicPhaseLifecycleListenerAdapter<Solution_> (implements org.optaplanner.core.impl.constructionheuristic.event.ConstructionHeuristicPhaseLifecycleListener<Solution_>)
      - org.optaplanner.core.impl.constructionheuristic.decider.forager.AbstractConstructionHeuristicForager<Solution_> (implements org.optaplanner.core.impl.constructionheuristic.decider.forager.ConstructionHeuristicForager<Solution_>)
        - org.optaplanner.core.impl.constructionheuristic.decider.forager.DefaultConstructionHeuristicForager<Solution_>
    - org.optaplanner.core.impl.localsearch.event.LocalSearchPhaseLifecycleListenerAdapter<Solution_> (implements org.optaplanner.core.impl.localsearch.event.LocalSearchPhaseLifecycleListener<Solution_>)
      - org.optaplanner.core.impl.localsearch.decider.acceptor.AbstractAcceptor<Solution_> (implements org.optaplanner.core.impl.localsearch.decider.acceptor.Acceptor<Solution_>)
        - org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.AbstractTabuAcceptor<Solution_>
          - org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.EntityTabuAcceptor<Solution_>
          - org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.MoveTabuAcceptor<Solution_>
          - org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.ValueTabuAcceptor<Solution_>
        - org.optaplanner.core.impl.localsearch.decider.acceptor.CompositeAcceptor<Solution_>
        - org.optaplanner.core.impl.localsearch.decider.acceptor.greatdeluge.GreatDelugeAcceptor<Solution_>
        - org.optaplanner.core.impl.localsearch.decider.acceptor.hillclimbing.HillClimbingAcceptor<Solution_>
        - org.optaplanner.core.impl.localsearch.decider.acceptor.lateacceptance.LateAcceptanceAcceptor<Solution_>
        - org.optaplanner.core.impl.localsearch.decider.acceptor.simulatedannealing.SimulatedAnnealingAcceptor<Solution_>
        - org.optaplanner.core.impl.localsearch.decider.acceptor.stepcountinghillclimbing.StepCountingHillClimbingAcceptor<Solution_>
      - org.optaplanner.core.impl.localsearch.decider.forager.finalist.AbstractFinalistPodium<Solution_> (implements org.optaplanner.core.impl.localsearch.decider.forager.finalist.FinalistPodium<Solution_>)
        - org.optaplanner.core.impl.localsearch.decider.forager.finalist.HighestScoreFinalistPodium<Solution_>
        - org.optaplanner.core.impl.localsearch.decider.forager.finalist.StrategicOscillationByLevelFinalistPodium<Solution_>
      - org.optaplanner.core.impl.localsearch.decider.forager.AbstractLocalSearchForager<Solution_> (implements org.optaplanner.core.impl.localsearch.decider.forager.LocalSearchForager<Solution_>)
        - org.optaplanner.core.impl.localsearch.decider.forager.AcceptedLocalSearchForager<Solution_>
    - org.optaplanner.core.impl.phase.event.PhaseLifecycleListenerAdapter<Solution_> (implements org.optaplanner.core.impl.phase.event.PhaseLifecycleListener<Solution_>)
      - org.optaplanner.core.impl.solver.termination.AbstractTermination<Solution_> (implements org.optaplanner.core.impl.solver.termination.Termination<Solution_>)
        - org.optaplanner.core.impl.solver.termination.AbstractCompositeTermination<Solution_>
          - org.optaplanner.core.impl.solver.termination.AndCompositeTermination<Solution_>
          - org.optaplanner.core.impl.solver.termination.OrCompositeTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.BasicPlumbingTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.BestScoreFeasibleTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.BestScoreTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.ChildThreadPlumbingTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.PhaseToSolverTerminationBridge<Solution_>
        - org.optaplanner.core.impl.solver.termination.ScoreCalculationCountTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.StepCountTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.TimeMillisSpentTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.UnimprovedStepCountTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.UnimprovedTimeMillisSpentScoreDifferenceThresholdTermination<Solution_>
        - org.optaplanner.core.impl.solver.termination.UnimprovedTimeMillisSpentTermination<Solution_>
      - org.optaplanner.core.impl.solver.recaller.BestSolutionRecaller<Solution_>
  - org.optaplanner.core.impl.solver.scope.SolverScope<Solution_>
  - org.optaplanner.benchmark.impl.statistic.StatisticPoint
    - org.optaplanner.benchmark.impl.statistic.bestscore.BestScoreStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.bestsolutionmutation.BestSolutionMutationStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.subsingle.constraintmatchtotalbestscore.ConstraintMatchTotalBestScoreStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.subsingle.constraintmatchtotalstepscore.ConstraintMatchTotalStepScoreStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.memoryuse.MemoryUseStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.movecountperstep.MoveCountPerStepStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.subsingle.pickedmovetypebestscore.PickedMoveTypeBestScoreDiffStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.subsingle.pickedmovetypestepscore.PickedMoveTypeStepScoreDiffStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.scorecalculationspeed.ScoreCalculationSpeedStatisticPoint
    - org.optaplanner.benchmark.impl.statistic.stepscore.StepScoreStatisticPoint
  - org.optaplanner.benchmark.impl.statistic.StatisticUtils
  - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChain
  - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelectorFactory<Solution_>
  - org.optaplanner.core.config.heuristic.selector.entity.pillar.SubPillarConfigPolicy
  - org.optaplanner.benchmark.impl.ranking.SubSingleBenchmarkRankBasedComparator (implements java.util.Comparator<T>)
  - org.optaplanner.benchmark.impl.result.SubSingleBenchmarkResult (implements org.optaplanner.benchmark.impl.result.BenchmarkResult)
  - org.optaplanner.benchmark.impl.SubSingleBenchmarkRunner<Solution_> (implements java.util.concurrent.Callable<V>)
  - org.optaplanner.benchmark.impl.statistic.SubSingleStatistic<Solution_,​StatisticPoint_>
    - org.optaplanner.benchmark.impl.statistic.ProblemBasedSubSingleStatistic<Solution_,​StatisticPoint_>
      - org.optaplanner.benchmark.impl.statistic.bestscore.BestScoreSubSingleStatistic<Solution_>
      - org.optaplanner.benchmark.impl.statistic.bestsolutionmutation.BestSolutionMutationSubSingleStatistic<Solution_>
      - org.optaplanner.benchmark.impl.statistic.memoryuse.MemoryUseSubSingleStatistic<Solution_>
      - org.optaplanner.benchmark.impl.statistic.movecountperstep.MoveCountPerStepSubSingleStatistic<Solution_>
      - org.optaplanner.benchmark.impl.statistic.scorecalculationspeed.ScoreCalculationSpeedSubSingleStatistic<Solution_>
      - org.optaplanner.benchmark.impl.statistic.stepscore.StepScoreSubSingleStatistic<Solution_>
    - org.optaplanner.benchmark.impl.statistic.PureSubSingleStatistic<Solution_,​StatisticPoint_>
      - org.optaplanner.benchmark.impl.statistic.subsingle.constraintmatchtotalbestscore.ConstraintMatchTotalBestScoreSubSingleStatistic<Solution_>
      - org.optaplanner.benchmark.impl.statistic.subsingle.constraintmatchtotalstepscore.ConstraintMatchTotalStepScoreSubSingleStatistic<Solution_>
      - org.optaplanner.benchmark.impl.statistic.subsingle.pickedmovetypebestscore.PickedMoveTypeBestScoreDiffSubSingleStatistic<Solution_>
      - org.optaplanner.benchmark.impl.statistic.subsingle.pickedmovetypestepscore.PickedMoveTypeStepScoreDiffSubSingleStatistic<Solution_>
  - org.optaplanner.swing.impl.SwingUncaughtExceptionHandler (implements java.lang.Thread.UncaughtExceptionHandler)
  - org.optaplanner.swing.impl.SwingUtils
  - org.optaplanner.swing.impl.TangoColorFactory
  - org.optaplanner.core.impl.solver.termination.TerminationFactory<Solution_>
  - org.optaplanner.core.impl.score.director.drools.testgen.reproducer.TestGenCorruptedScoreReproducer (implements org.optaplanner.core.impl.score.director.drools.testgen.TestGenKieSessionListener, org.optaplanner.core.impl.score.director.drools.testgen.reproducer.TestGenOriginalProblemReproducer)
  - org.optaplanner.core.impl.score.director.drools.testgen.reproducer.TestGenCorruptedVariableListenerReproducer (implements org.optaplanner.core.impl.score.director.drools.testgen.TestGenKieSessionListener, org.optaplanner.core.impl.score.director.drools.testgen.reproducer.TestGenOriginalProblemReproducer)
  - org.optaplanner.core.impl.score.director.drools.testgen.reproducer.TestGenDroolsExceptionReproducer (implements org.optaplanner.core.impl.score.director.drools.testgen.reproducer.TestGenOriginalProblemReproducer)
  - org.optaplanner.core.impl.score.director.drools.testgen.fact.TestGenFactField (implements java.lang.Comparable<T>)
  - org.optaplanner.core.impl.score.director.drools.testgen.mutation.TestGenHeadCuttingMutator<T>
  - org.optaplanner.core.impl.score.director.drools.testgen.fact.TestGenInlineValue (implements org.optaplanner.core.impl.score.director.drools.testgen.fact.TestGenFact)
  - org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionDelete (implements org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionOperation)
  - org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionFireAllRules (implements org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionOperation)
  - org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionInsert (implements org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionOperation)
  - org.optaplanner.core.impl.score.director.drools.testgen.TestGenKieSessionJournal
  - org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionUpdate (implements org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionOperation)
  - org.optaplanner.core.impl.score.director.drools.testgen.fact.TestGenNullFact (implements org.optaplanner.core.impl.score.director.drools.testgen.fact.TestGenFact)
  - org.optaplanner.core.impl.score.director.drools.testgen.mutation.TestGenRemoveRandomBlockMutator<T>
  - org.optaplanner.core.impl.score.director.drools.testgen.fact.TestGenValueFact (implements org.optaplanner.core.impl.score.director.drools.testgen.fact.TestGenFact)
  - org.optaplanner.core.impl.solver.thread.ThreadUtils
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - org.optaplanner.core.impl.io.OptaPlannerXmlSerializationException
        - org.optaplanner.benchmark.api.PlannerBenchmarkException
        - org.optaplanner.core.impl.score.director.drools.testgen.reproducer.TestGenCorruptedScoreException
  - org.optaplanner.benchmark.impl.ranking.TotalRankSolverRankingWeightFactory (implements org.optaplanner.benchmark.impl.ranking.SolverRankingWeightFactory)
  - org.optaplanner.benchmark.impl.ranking.TotalRankSolverRankingWeightFactory.TotalRankSolverRankingWeight (implements java.lang.Comparable<T>)
  - org.optaplanner.benchmark.impl.ranking.TotalScoreSingleBenchmarkRankingComparator (implements java.util.Comparator<T>)
  - org.optaplanner.benchmark.impl.ranking.TotalScoreSolverRankingComparator (implements java.util.Comparator<T>)
  - org.optaplanner.core.impl.exhaustivesearch.node.bounder.TrendBasedScoreBounder (implements org.optaplanner.core.impl.exhaustivesearch.node.bounder.ScoreBounder)
  - org.optaplanner.core.impl.score.stream.drools.common.TriTuple<A,​B,​C> (implements org.optaplanner.core.impl.score.stream.drools.common.FactTuple)
  - org.optaplanner.core.api.domain.valuerange.ValueRangeFactory
  - org.optaplanner.core.impl.domain.valuerange.util.ValueRangeIterator<S> (implements java.util.Iterator<E>)
  - org.optaplanner.core.impl.domain.variable.descriptor.VariableDescriptor<Solution_>
    - org.optaplanner.core.impl.domain.variable.descriptor.GenuineVariableDescriptor<Solution_>
    - org.optaplanner.core.impl.domain.variable.descriptor.ShadowVariableDescriptor<Solution_>
      - org.optaplanner.core.impl.domain.variable.anchor.AnchorShadowVariableDescriptor<Solution_>
      - org.optaplanner.core.impl.domain.variable.custom.CustomShadowVariableDescriptor<Solution_>
      - org.optaplanner.core.impl.domain.variable.inverserelation.InverseRelationShadowVariableDescriptor<Solution_>
  - org.optaplanner.core.impl.domain.variable.listener.support.VariableListenerNotifiable (implements java.lang.Comparable<T>)
  - org.optaplanner.core.impl.domain.variable.listener.support.VariableListenerNotification
  - org.optaplanner.core.impl.domain.variable.listener.support.VariableListenerSupport<Solution_> (implements org.optaplanner.core.impl.domain.variable.supply.SupplyManager<Solution_>)
  - org.optaplanner.benchmark.impl.report.WebsiteResourceUtils
  - org.optaplanner.core.impl.heuristic.selector.common.decorator.WeightFactorySelectionSorter<Solution_,​T> (implements org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionSorter<Solution_,​T>)
  - org.optaplanner.benchmark.impl.ranking.WorstScoreSolverRankingComparator (implements java.util.Comparator<T>)
  - javax.xml.bind.annotation.adapters.XmlAdapter<ValueType,​BoundType>
    - org.optaplanner.persistence.jaxb.api.score.AbstractScoreJaxbAdapter<Score_>
      - org.optaplanner.persistence.jaxb.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.bendablelong.BendableLongScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.bendable.BendableScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.hardmediumsoft.HardMediumSoftScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.hardsoftlong.HardSoftLongScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.hardsoft.HardSoftScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.simplebigdecimal.SimpleBigDecimalScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.simplelong.SimpleLongScoreJaxbAdapter
      - org.optaplanner.persistence.jaxb.api.score.buildin.simple.SimpleScoreJaxbAdapter
    - org.optaplanner.core.impl.io.jaxb.adapter.JaxbCustomPropertiesAdapter
    - org.optaplanner.core.impl.io.jaxb.adapter.JaxbDurationAdapter
    - org.optaplanner.core.impl.io.jaxb.adapter.JaxbLocaleAdapter
    - org.optaplanner.core.impl.io.jaxb.adapter.JaxbOffsetDateTimeAdapter
    - org.optaplanner.persistence.jaxb.api.score.PolymorphicScoreJaxbAdapter
  - org.optaplanner.benchmark.impl.xsd.XsdAggregator
  - org.optaplanner.persistence.xstream.impl.domain.solution.XStreamSolutionFileIO<Solution_> (implements org.optaplanner.persistence.common.api.domain.solution.SolutionFileIO<Solution_>)

## Interface Hierarchy

- java.lang.reflect.AnnotatedElement
  - org.optaplanner.core.impl.domain.common.accessor.MemberAccessor
- java.lang.AutoCloseable
  - java.io.Closeable
    - org.optaplanner.core.api.domain.variable.VariableListener<Solution_,​Entity_>
      - org.optaplanner.core.api.domain.variable.CustomShadowVariable.NullVariableListener
      - org.optaplanner.core.impl.domain.variable.listener.SourcedVariableListener<Solution_,​Entity_> (also extends org.optaplanner.core.impl.domain.variable.supply.Supply)
  - org.optaplanner.core.impl.score.stream.ConstraintSession<Solution_,​Score_>
  - org.optaplanner.core.impl.score.director.InnerScoreDirector<Solution_,​Score_> (also extends org.optaplanner.core.api.score.director.ScoreDirector<Solution_>)
  - org.optaplanner.core.api.solver.SolverManager<Solution_,​ProblemId_>
- org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeConstraintStream<Solution_>
- org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinConstraintStream<Solution_>
- org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinNode
- org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinTuple
- org.optaplanner.core.impl.score.stream.bavet.common.BavetNode
  - org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeNode
  - org.optaplanner.core.impl.score.stream.bavet.common.BavetScoringNode
- org.optaplanner.core.impl.score.stream.bavet.common.BavetScoringTuple
- org.optaplanner.core.impl.score.stream.bavet.common.BavetTuple
  - org.optaplanner.core.impl.score.stream.bavet.common.BavetGroupBridgeTuple
  - org.optaplanner.core.impl.score.stream.bavet.common.BavetGroupTuple
  - org.optaplanner.core.impl.score.stream.bavet.common.BavetJoinBridgeTuple
- org.optaplanner.benchmark.impl.result.BenchmarkResult
- org.optaplanner.core.api.score.stream.bi.BiConstraintCollector<A,​B,​ResultContainer_,​Result_>
- org.optaplanner.core.api.score.stream.bi.BiJoiner<A,​B>
- org.optaplanner.core.impl.score.stream.drools.common.nodes.ChildNode
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.BiConstraintGraphNode (also extends org.optaplanner.core.impl.score.stream.drools.common.nodes.ConstraintGraphNode)
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.QuadConstraintGraphNode (also extends org.optaplanner.core.impl.score.stream.drools.common.nodes.ConstraintGraphNode)
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.TriConstraintGraphNode (also extends org.optaplanner.core.impl.score.stream.drools.common.nodes.ConstraintGraphNode)
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.UniConstraintGraphChildNode (also extends org.optaplanner.core.impl.score.stream.drools.common.nodes.UniConstraintGraphNode)
- java.lang.Comparable<T>
  - org.optaplanner.core.api.score.Score<Score_>
- java.util.Comparator<T>
  - org.optaplanner.core.api.domain.entity.PlanningEntity.NullDifficultyComparator
  - org.optaplanner.core.api.domain.variable.PlanningVariable.NullStrengthComparator
- org.optaplanner.core.api.score.stream.Constraint
- org.optaplanner.core.impl.score.stream.drools.common.consequences.ConstraintConsequence<Node_>
  - org.optaplanner.core.impl.score.stream.drools.common.consequences.BiConstraintConsequence
  - org.optaplanner.core.impl.score.stream.drools.common.consequences.QuadConstraintConsequence
  - org.optaplanner.core.impl.score.stream.drools.common.consequences.TriConstraintConsequence
  - org.optaplanner.core.impl.score.stream.drools.common.consequences.UniConstraintConsequence
- org.optaplanner.core.api.score.stream.ConstraintFactory
- org.optaplanner.core.impl.score.stream.drools.common.nodes.ConstraintGraphNode
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.BiConstraintGraphNode (also extends org.optaplanner.core.impl.score.stream.drools.common.nodes.ChildNode)
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.QuadConstraintGraphNode (also extends org.optaplanner.core.impl.score.stream.drools.common.nodes.ChildNode)
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.TriConstraintGraphNode (also extends org.optaplanner.core.impl.score.stream.drools.common.nodes.ChildNode)
  - org.optaplanner.core.impl.score.stream.drools.common.nodes.UniConstraintGraphNode
    - org.optaplanner.core.impl.score.stream.drools.common.nodes.UniConstraintGraphChildNode (also extends org.optaplanner.core.impl.score.stream.drools.common.nodes.ChildNode)
- org.optaplanner.core.api.score.constraint.ConstraintMatchTotal<Score_>
- org.optaplanner.core.api.score.stream.ConstraintProvider
- org.optaplanner.core.impl.score.stream.ConstraintSessionFactory<Solution_,​Score_>
- org.optaplanner.core.api.score.stream.ConstraintStream
  - org.optaplanner.core.api.score.stream.bi.BiConstraintStream<A,​B>
    - org.optaplanner.core.impl.score.stream.bi.InnerBiConstraintStream<A,​B>
  - org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D>
    - org.optaplanner.core.impl.score.stream.quad.InnerQuadConstraintStream<A,​B,​C,​D>
  - org.optaplanner.core.api.score.stream.tri.TriConstraintStream<A,​B,​C>
    - org.optaplanner.core.impl.score.stream.tri.InnerTriConstraintStream<A,​B,​C>
  - org.optaplanner.core.api.score.stream.uni.UniConstraintStream<A>
    - org.optaplanner.core.impl.score.stream.uni.InnerUniConstraintStream<A>
- org.optaplanner.test.api.score.stream.ConstraintVerifier<ConstraintProvider_,​Solution_>
- org.optaplanner.core.impl.phase.custom.CustomPhaseCommand<Solution_>
- org.optaplanner.core.impl.domain.variable.supply.Demand<Solution_,​Supply_>
- org.optaplanner.core.impl.score.stream.drools.common.DroolsVariableFactory
- org.optaplanner.core.api.score.calculator.EasyScoreCalculator<Solution_,​Score_>
- org.optaplanner.core.impl.heuristic.selector.entity.mimic.EntityMimicRecorder<Solution_>
- org.optaplanner.core.impl.constructionheuristic.placer.EntityPlacerFactory<Solution_>
- java.util.EventListener
  - org.optaplanner.core.api.solver.event.SolverEventListener<Solution_>
  - org.optaplanner.core.impl.solver.event.SolverLifecycleListener<Solution_>
    - org.optaplanner.core.impl.constructionheuristic.event.ConstructionHeuristicPhaseLifecycleListener<Solution_>
      - org.optaplanner.core.impl.constructionheuristic.decider.forager.ConstructionHeuristicForager<Solution_>
    - org.optaplanner.core.impl.exhaustivesearch.event.ExhaustiveSearchPhaseLifecycleListener<Solution_>
    - org.optaplanner.core.impl.localsearch.event.LocalSearchPhaseLifecycleListener<Solution_>
      - org.optaplanner.core.impl.localsearch.decider.acceptor.Acceptor<Solution_>
      - org.optaplanner.core.impl.localsearch.decider.forager.finalist.FinalistPodium<Solution_>
      - org.optaplanner.core.impl.localsearch.decider.forager.LocalSearchForager<Solution_>
    - org.optaplanner.core.impl.partitionedsearch.event.PartitionedSearchPhaseLifecycleListener<Solution_>
    - org.optaplanner.core.impl.phase.event.PhaseLifecycleListener<Solution_>
      - org.optaplanner.core.impl.constructionheuristic.placer.EntityPlacer<Solution_> (also extends java.lang.Iterable<T>)
      - org.optaplanner.core.impl.phase.Phase<Solution_>
        - org.optaplanner.core.impl.constructionheuristic.ConstructionHeuristicPhase<Solution_>
        - org.optaplanner.core.impl.phase.custom.CustomPhase<Solution_>
        - org.optaplanner.core.impl.exhaustivesearch.ExhaustiveSearchPhase<Solution_>
        - org.optaplanner.core.impl.localsearch.LocalSearchPhase<Solution_>
        - org.optaplanner.core.impl.partitionedsearch.PartitionedSearchPhase<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.Selector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.IterableSelector<Solution_,​T> (also extends java.lang.Iterable<T>)
          - org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_> (also extends org.optaplanner.core.impl.heuristic.selector.value.ValueSelector<Solution_>)
          - org.optaplanner.core.impl.heuristic.selector.ListIterableSelector<Solution_,​T> (also extends org.optaplanner.core.impl.heuristic.selector.common.iterator.ListIterable<T>)
            - org.optaplanner.core.impl.heuristic.selector.entity.EntitySelector<Solution_>
            - org.optaplanner.core.impl.heuristic.selector.entity.pillar.PillarSelector<Solution_>
            - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelector<Solution_>
          - org.optaplanner.core.impl.heuristic.selector.move.MoveSelector<Solution_>
        - org.optaplanner.core.impl.heuristic.selector.value.ValueSelector<Solution_>
          - org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_> (also extends org.optaplanner.core.impl.heuristic.selector.IterableSelector<Solution_,​T>)
      - org.optaplanner.core.impl.solver.termination.Termination<Solution_>
  - org.optaplanner.core.impl.score.director.drools.testgen.TestGenKieSessionListener
- org.optaplanner.core.impl.score.stream.drools.common.FactTuple
- org.optaplanner.core.api.score.calculator.IncrementalScoreCalculator<Solution_,​Score_>
  - org.optaplanner.core.api.score.calculator.ConstraintMatchAwareIncrementalScoreCalculator<Solution_,​Score_>
- org.optaplanner.core.api.score.constraint.Indictment<Score_>
- java.lang.Iterable<T>
  - org.optaplanner.core.impl.constructionheuristic.placer.EntityPlacer<Solution_> (also extends org.optaplanner.core.impl.phase.event.PhaseLifecycleListener<Solution_>)
  - org.optaplanner.core.impl.heuristic.selector.IterableSelector<Solution_,​T> (also extends org.optaplanner.core.impl.heuristic.selector.Selector<Solution_>)
    - org.optaplanner.core.impl.heuristic.selector.value.EntityIndependentValueSelector<Solution_> (also extends org.optaplanner.core.impl.heuristic.selector.value.ValueSelector<Solution_>)
    - org.optaplanner.core.impl.heuristic.selector.ListIterableSelector<Solution_,​T> (also extends org.optaplanner.core.impl.heuristic.selector.common.iterator.ListIterable<T>)
      - org.optaplanner.core.impl.heuristic.selector.entity.EntitySelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.pillar.PillarSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelector<Solution_>
    - org.optaplanner.core.impl.heuristic.selector.move.MoveSelector<Solution_>
  - org.optaplanner.core.impl.heuristic.selector.common.iterator.ListIterable<T>
    - org.optaplanner.core.impl.heuristic.selector.ListIterableSelector<Solution_,​T> (also extends org.optaplanner.core.impl.heuristic.selector.IterableSelector<Solution_,​T>)
      - org.optaplanner.core.impl.heuristic.selector.entity.EntitySelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.entity.pillar.PillarSelector<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelector<Solution_>
- org.optaplanner.core.impl.io.jaxb.JaxbIO<T>
- org.optaplanner.core.impl.domain.lookup.LookUpStrategy
- org.optaplanner.core.impl.heuristic.move.Move<Solution_>
- org.optaplanner.core.impl.heuristic.selector.move.factory.MoveIteratorFactory<Solution_,​Move_>
- org.optaplanner.core.impl.heuristic.selector.move.factory.MoveListFactory<Solution_>
- org.optaplanner.core.impl.heuristic.selector.move.MoveSelectorFactory<Solution_>
- org.optaplanner.test.api.score.stream.MultiConstraintAssertion
- org.optaplanner.test.api.score.stream.MultiConstraintVerification<Solution_>
- org.optaplanner.core.impl.heuristic.selector.common.nearby.NearbyDistanceMeter<O,​D>
- org.optaplanner.core.impl.heuristic.selector.common.nearby.NearbyRandom
- org.optaplanner.core.api.function.PentaFunction<A,​B,​C,​D,​E,​R>
- org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>
- org.optaplanner.core.api.function.PentaPredicate<A,​B,​C,​D,​E>
- org.optaplanner.core.impl.phase.PhaseFactory<Solution_>
- org.optaplanner.core.api.domain.entity.PinningFilter<Solution_,​Entity_>
  - org.optaplanner.core.api.domain.entity.PlanningEntity.NullPinningFilter
- org.optaplanner.benchmark.api.PlannerBenchmark
- org.optaplanner.core.api.domain.variable.PlanningVariableReference.NullEntityClass
- org.optaplanner.core.api.solver.ProblemFactChange<Solution_>
- org.optaplanner.benchmark.impl.loader.ProblemProvider<Solution_>
- org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_>
- org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​R>
- org.optaplanner.core.api.score.stream.quad.QuadJoiner<A,​B,​C,​D>
- org.optaplanner.core.api.function.QuadPredicate<A,​B,​C,​D>
- org.optaplanner.core.impl.solver.random.RandomFactory
- org.optaplanner.core.impl.score.stream.drools.common.rules.RuleAssembler
- org.optaplanner.core.impl.exhaustivesearch.node.bounder.ScoreBounder
- org.optaplanner.core.impl.score.definition.ScoreDefinition<Score_>
  - org.optaplanner.core.api.domain.solution.PlanningScore.NullScoreDefinition
- org.optaplanner.core.api.score.director.ScoreDirector<Solution_>
  - org.optaplanner.core.impl.score.director.InnerScoreDirector<Solution_,​Score_> (also extends java.lang.AutoCloseable)
- org.optaplanner.core.impl.score.director.ScoreDirectorFactory<Solution_>
  - org.optaplanner.core.impl.score.director.InnerScoreDirectorFactory<Solution_,​Score_>
- org.optaplanner.core.api.score.ScoreExplanation<Solution_,​Score_>
- org.optaplanner.core.api.score.holder.ScoreHolder<Score_>
  - org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
  - org.optaplanner.core.api.score.buildin.bendablelong.BendableLongScoreHolder
  - org.optaplanner.core.api.score.buildin.bendable.BendableScoreHolder
  - org.optaplanner.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScoreHolder
  - org.optaplanner.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScoreHolder
  - org.optaplanner.core.api.score.buildin.hardmediumsoft.HardMediumSoftScoreHolder
  - org.optaplanner.core.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScoreHolder
  - org.optaplanner.core.api.score.buildin.hardsoftlong.HardSoftLongScoreHolder
  - org.optaplanner.core.api.score.buildin.hardsoft.HardSoftScoreHolder
  - org.optaplanner.core.api.score.buildin.simplebigdecimal.SimpleBigDecimalScoreHolder
  - org.optaplanner.core.api.score.buildin.simplelong.SimpleLongScoreHolder
  - org.optaplanner.core.api.score.buildin.simple.SimpleScoreHolder
- org.optaplanner.core.api.score.ScoreManager<Solution_,​Score_>
- org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener<Solution_>
- org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionFilter<Solution_,​T>
- org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionProbabilityWeightFactory<Solution_,​T>
- org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionSorter<Solution_,​T>
- org.optaplanner.core.impl.heuristic.selector.common.decorator.SelectionSorterWeightFactory<Solution_,​T>
  - org.optaplanner.core.api.domain.entity.PlanningEntity.NullDifficultyWeightFactory
  - org.optaplanner.core.api.domain.variable.PlanningVariable.NullStrengthWeightFactory
- java.io.Serializable
  - org.optaplanner.core.impl.score.stream.drools.common.GroupByCollectorProcessor<InTuple,​OutTuple>
- org.optaplanner.test.api.score.stream.SingleConstraintAssertion
- org.optaplanner.test.api.score.stream.SingleConstraintVerification<Solution_>
- org.optaplanner.core.api.domain.solution.cloner.SolutionCloner<Solution_>
  - org.optaplanner.core.api.domain.solution.PlanningSolution.NullSolutionCloner
- org.optaplanner.persistence.common.api.domain.solution.SolutionFileIO<Solution_>
- org.optaplanner.core.impl.partitionedsearch.partitioner.SolutionPartitioner<Solution_>
- org.optaplanner.core.api.solver.Solver<Solution_>
- org.optaplanner.core.api.solver.SolverFactory<Solution_>
- org.optaplanner.core.api.solver.SolverJob<Solution_,​ProblemId_>
- org.optaplanner.benchmark.impl.ranking.SolverRankingWeightFactory
- org.optaplanner.benchmark.impl.statistic.StatisticType
- org.optaplanner.core.impl.domain.variable.supply.Supply
  - org.optaplanner.core.impl.domain.variable.anchor.AnchorVariableSupply
  - org.optaplanner.core.impl.domain.variable.inverserelation.CollectionInverseVariableSupply
  - org.optaplanner.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply
  - org.optaplanner.core.impl.domain.variable.listener.SourcedVariableListener<Solution_,​Entity_> (also extends org.optaplanner.core.api.domain.variable.VariableListener<Solution_,​Entity_>)
- org.optaplanner.core.impl.domain.variable.supply.SupplyManager<Solution_>
- org.optaplanner.core.impl.localsearch.decider.acceptor.tabu.size.TabuSizeStrategy<Solution_>
- org.optaplanner.core.impl.score.director.drools.testgen.fact.TestGenFact
- org.optaplanner.core.impl.score.director.drools.testgen.operation.TestGenKieSessionOperation
- org.optaplanner.core.impl.score.director.drools.testgen.reproducer.TestGenOriginalProblemReproducer
- org.optaplanner.core.api.function.ToIntQuadFunction<A,​B,​C,​D>
- org.optaplanner.core.api.function.ToIntTriFunction<A,​B,​C>
- org.optaplanner.core.api.function.ToLongQuadFunction<A,​B,​C,​D>
- org.optaplanner.core.api.function.ToLongTriFunction<A,​B,​C>
- org.optaplanner.core.api.score.stream.tri.TriConstraintCollector<A,​B,​C,​ResultContainer_,​Result_>
- org.optaplanner.core.api.function.TriFunction<A,​B,​C,​R>
- org.optaplanner.core.api.score.stream.tri.TriJoiner<A,​B,​C>
- org.optaplanner.core.api.function.TriPredicate<A,​B,​C>
- org.optaplanner.core.impl.score.inliner.UndoScoreImpacter
- org.optaplanner.core.api.score.stream.uni.UniConstraintCollector<A,​ResultContainer_,​Result_>
- org.optaplanner.core.impl.heuristic.selector.value.mimic.ValueMimicRecorder<Solution_>
- org.optaplanner.core.api.domain.valuerange.ValueRange<T>
  - org.optaplanner.core.api.domain.valuerange.CountableValueRange<T>
- org.optaplanner.core.impl.domain.valuerange.descriptor.ValueRangeDescriptor<Solution_>
  - org.optaplanner.core.impl.domain.valuerange.descriptor.EntityIndependentValueRangeDescriptor<Solution_>
- org.optaplanner.core.impl.score.inliner.WeightedScoreImpacter
  - org.optaplanner.core.impl.score.inliner.BigDecimalWeightedScoreImpacter
  - org.optaplanner.core.impl.score.inliner.IntWeightedScoreImpacter
  - org.optaplanner.core.impl.score.inliner.LongWeightedScoreImpacter

## Annotation Type Hierarchy

- org.optaplanner.core.api.domain.variable.AnchorShadowVariable (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.constraintweight.ConstraintConfiguration (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.constraintweight.ConstraintConfigurationProvider (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.constraintweight.ConstraintWeight (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.variable.CustomShadowVariable (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.solution.cloner.DeepPlanningClone (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.variable.InverseRelationShadowVariable (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.entity.PlanningEntity (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.solution.PlanningEntityCollectionProperty (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.solution.PlanningEntityProperty (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.lookup.PlanningId (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.entity.PlanningPin (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.solution.PlanningScore (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.solution.PlanningSolution (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.variable.PlanningVariable (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.variable.PlanningVariableReference (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.solution.ProblemFactCollectionProperty (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.solution.ProblemFactProperty (implements java.lang.annotation.Annotation)
- org.optaplanner.core.api.domain.valuerange.ValueRangeProvider (implements java.lang.annotation.Annotation)

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.optaplanner.core.config.localsearch.decider.acceptor.AcceptorType
    - org.optaplanner.core.api.domain.autodiscover.AutoDiscoverMemberType
    - org.optaplanner.core.impl.score.stream.bavet.common.BavetTupleState
    - org.optaplanner.core.impl.solver.thread.ChildThreadType
    - org.optaplanner.core.impl.score.stream.drools.common.consequences.ConsequenceMatchWeightType
    - org.optaplanner.core.impl.score.stream.drools.common.nodes.ConstraintGraphNodeType
    - org.optaplanner.core.api.score.stream.ConstraintStreamImplType
    - org.optaplanner.core.config.constructionheuristic.decider.forager.ConstructionHeuristicPickEarlyType
    - org.optaplanner.core.config.constructionheuristic.ConstructionHeuristicType
    - org.optaplanner.core.config.heuristic.selector.entity.EntitySorterManner
    - org.optaplanner.core.config.solver.EnvironmentMode
    - org.optaplanner.core.config.exhaustivesearch.ExhaustiveSearchType
    - org.optaplanner.core.config.localsearch.decider.forager.FinalistPodiumType
    - org.optaplanner.core.config.score.trend.InitializingScoreTrendLevel
    - org.optaplanner.core.impl.score.stream.common.JoinerType
    - org.optaplanner.core.config.localsearch.decider.forager.LocalSearchPickEarlyType
    - org.optaplanner.core.config.localsearch.LocalSearchType
    - org.optaplanner.core.api.domain.lookup.LookUpStrategyType
    - org.optaplanner.core.impl.domain.common.accessor.MemberAccessorFactory.MemberAccessorType
    - org.optaplanner.benchmark.impl.aggregator.swingui.MixedCheckBox.MixedCheckBoxStatus
    - org.optaplanner.core.config.heuristic.selector.common.nearby.NearbySelectionDistributionType
    - org.optaplanner.core.config.exhaustivesearch.NodeExplorationType
    - org.optaplanner.core.impl.partitionedsearch.queue.PartitionChangedEvent.PartitionChangedEventType
    - org.optaplanner.core.api.domain.variable.PlanningVariableGraphType
    - org.optaplanner.benchmark.config.statistic.ProblemStatisticType (implements org.optaplanner.benchmark.impl.statistic.StatisticType)
    - org.optaplanner.core.config.solver.random.RandomType
    - org.optaplanner.core.config.score.definition.ScoreDefinitionType
    - org.optaplanner.core.impl.score.stream.common.ScoreImpactType
    - org.optaplanner.core.config.heuristic.selector.common.SelectionCacheType
    - org.optaplanner.core.config.heuristic.selector.common.SelectionOrder
    - org.optaplanner.core.config.heuristic.selector.common.decorator.SelectionSorterOrder
    - org.optaplanner.benchmark.config.statistic.SingleStatisticType (implements org.optaplanner.benchmark.impl.statistic.StatisticType)
    - org.optaplanner.benchmark.config.blueprint.SolverBenchmarkBluePrintType
    - org.optaplanner.benchmark.config.ranking.SolverRankingType
    - org.optaplanner.core.api.solver.SolverStatus
    - org.optaplanner.core.config.localsearch.decider.acceptor.stepcountinghillclimbing.StepCountingHillClimbingType
    - org.optaplanner.core.config.heuristic.selector.move.generic.SubPillarType
    - org.optaplanner.core.config.solver.termination.TerminationCompositionStyle
    - org.optaplanner.core.config.heuristic.selector.value.ValueSorterManner
    - org.optaplanner.core.impl.domain.variable.listener.support.VariableListenerNotificationType