def generate_relationship_statements(names, m, rng: random.Random):
  """Generates relationship statements based on a relationship matrix.

  Args:
      names: A list of strings representing the names of individuals in the
        group.
      m: A dictionary representing the symmetric relationship matrix, as
        generated by 'sample_symmetric_relationship_matrix'.
      rng: A random number generator.

  Returns:
      A dictionary where:
          - Keys are names from the 'names' list.
          - Values are strings describing the relationships of that individual
          with others in the group.
  """

  relationship_statements = {}
  for a in names:
    statements = []
    for b in names:
      if a != b:
        if m[a][b] > 0.0:
          statement = rng.choice(
              pub_coordination_relationships.POSITIVE_RELATIONSHIP_STATEMENTS
          )
          statement = statement.format(player_a=a, player_b=b)
          statements.append(statement)
        elif m[a][b] == 0.0:
          statement = rng.choice(
              pub_coordination_relationships.NEUTRAL_RELATIONSHIP_STATEMENTS
          )
          statement = statement.format(player_a=a, player_b=b)
          statements.append(statement)
    relationship_statements[a] = statements

  return relationship_statements
Generates relationship statements based on a relationship matrix.

  Args:
      names: A list of strings representing the names of individuals in the
        group.
      m: A dictionary representing the symmetric relationship matrix, as
        generated by 'sample_symmetric_relationship_matrix'.
      rng: A random number generator.

  Returns:
      A dictionary where:
          - Keys are names from the 'names' list.
          - Values are strings describing the relationships of that individual
          with others in the group.
  
examples/deprecated/modular/environment/pub_coordination.py