В UserDefaults сохраняется одно значение для всех элементов, а должно только для одного? Почему?

swift

#1

Названия все парюсь из json, он в программе в оффлайне

Когда меняю значение на true, оно становится у всех элементов

Модель

struct LangName: Codable {
let name: String
let image: String
let text: String
var active: Bool
let levels: [Level]

}
extension LangName {
enum CodingKeys: String, CodingKey { // declaring our keys
    case name
    case image
    case text
    case levels
    
}

init(from decoder: Decoder) throws {
    let container = try decoder.container(keyedBy: CodingKeys.self)
    let name: String = try container.decode(String.self, forKey: .name)
    let image: String = try container.decode(String.self, forKey: .image)
    let text: String = try container.decode(String.self, forKey: .text)

    let levels: [Level] = try container.decode([Level].self, forKey: .levels)
   
   self.init(name: name, image: image, text: text, active: false, levels: levels)
  }
}

Код сохранения

var rowNumber : Int = 0
var arrayLanguages:Languages!
 var langName: String? = nil

override func viewDidLoad() {
    super.viewDidLoad()
    
    ParsingJson.parsingData { (value) in
        self.arrayLanguages = value
       }
    }

func change() {

let value = arrayLanguages.langName[rowNumber].active

   UserDefaults.standard.set(true, forKey: "\(value)")
    UserDefaults.standard.synchronize()
}


func printNewValue() {
     let value = arrayLanguages.langName[rowNumber].active
    let newValue = UserDefaults.standard.bool(forKey: "\(value)")
    print(arrayLanguages.langName[rowNumber].name)
    print(value)
    print(newValue)
}

@IBAction func subscription(_ sender: Any) {
    change()
    
}

@IBAction func printing(_ sender: Any) {
    printNewValue()
  }
}