def METHOD_NAME(ursulas, lonely_ursula_maker):
    lonely_learner = lonely_ursula_maker().pop()
    # This Ursula doesn't know about any nodes.
    assert len(lonely_learner.known_nodes) == 0
    some_ursula_in_the_fleet = list(ursulas)[0]
    lonely_learner.remember_node(some_ursula_in_the_fleet)
    checksum_after_learning_one = lonely_learner.known_nodes.checksum
    assert some_ursula_in_the_fleet in lonely_learner.known_nodes
    assert some_ursula_in_the_fleet.checksum_address in lonely_learner.known_nodes
    assert len(lonely_learner.known_nodes) == 1
    assert lonely_learner.known_nodes.population == 2
    another_ursula_in_the_fleet = list(ursulas)[1]
    lonely_learner.remember_node(another_ursula_in_the_fleet)
    checksum_after_learning_two = lonely_learner.known_nodes.checksum
    assert some_ursula_in_the_fleet in lonely_learner.known_nodes
    assert another_ursula_in_the_fleet in lonely_learner.known_nodes
    assert some_ursula_in_the_fleet.checksum_address in lonely_learner.known_nodes
    assert another_ursula_in_the_fleet.checksum_address in lonely_learner.known_nodes
    assert len(lonely_learner.known_nodes) == 2
    assert lonely_learner.known_nodes.population == 3
    assert checksum_after_learning_one != checksum_after_learning_two
    first_state = lonely_learner.known_nodes._archived_states[-2]
    assert first_state.population == 2
    assert first_state.checksum == checksum_after_learning_one
    second_state = lonely_learner.known_nodes._archived_states[-1]
    assert second_state.population == 3
    assert second_state.checksum == checksum_after_learning_two