Cannot assign value of type '[asd]?' to type 'asd' : I've some variable in this class

    class qwerty: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource {

        var userData = clsReqData()
        var arrayMissingLI [String] = []
        var arrayInLI [String] = []
        var arrayLN [String] = []

        override func viewDidLoad() {

            reqSpinnerCIN()

        }
  
        func reqSpinnerCIN(){
        
            NetworkingService.shared.reqSpinnerCIN(phone_number: user.phone_number!) {spinnerResponse in
            
                if (spinnerResponse == nil){
                
                    self.view.makeToast("Technical problem, please try again...")
                
                } else {

                    if (spinnerResponse?.success == Const.ResponseKey.Success){
                    
                        print(spinnerResponse ?? "")
                    
                        self.userData = spinnerResponse?.data!
                        //error "Cannot assign value of type '[clsSpinnerNominalCashin]?' to type 'clsSpinnerNominalCashin'"
                     
                    } else if (spinnerResponse?.success == Const.ResponseKey.SessionEnd) {

                        self.sessionEnd()

                    } else {
                    
                        let popup       = PopupDialog(title: "Failed to get data", message: spinnerResponse?.error)
                        let buttonOK    = DefaultButton(title: "OK"){
                        
                        }
                        popup.addButton(buttonOK)
                    
                        self.present(popup,animated: true,completion: nil)
                    
                    }
                }
            }   
        }
    }

Let's say `spinnerResponse` is class `clsReqDataResponseFromServer` that i use in escape handling Alamofire to getting the response from server. And the variable inside this class is :

    class clsReqDataResponseFromServer: Mappable {
    
        var tag: String?
        var success: String?
        var error: String?
        var data: [clsReqData]?
    
    
        required init? (map: Map) {
        
        }
    
        init () {
        
        
        }
    
        func mapping(map: Map) {
        
            tag             <- map ["tag"]
            success         <- map ["success"]
            error           <- map ["error"]
            data            <- map ["data"]
        
        }
    }

And variable inside class `clsReqData` is :

    class clsReqData: Mappable {
    
        var Type: String?
        var ListId: String?
        var ListName: String?
    
    
        required init? (map: Map) {
        
        }
    
        init () {
        
        
        }
    
        func mapping(map: Map) {
        
            Type             <- map ["type"]
            ListId         <- map ["list_i"]
            ListName           <- map ["list_name"]
        
        }
    }

in this case, `spinnerResponse.data` is the `clsReqData` but it declared as `array` and i use it for getting the response from server. Because of that, i can't put this response into `userData`

inside `spinnerResponse.data`, it have some variable like `T, LI,` and `LN`

I want to put those data from `spinnerResponse.data` into `userData` because i want to filter the data inside `spinnerResponse.data`

For example
if the response that i get from `clsReqData` is

        //T = Type
        //LI = ListId
        //LN = ListName


        T = In
        LI = 001
        LN = CG1

        T = Out
        LI = 001
        LN = CG2

        T = Missing
        LI = 001
        LN = CG3

        T = Out
        LI = 002
        LN = CG4

        T = In
        LI = 002
        LN = CG5

If the `T` is `Missing`, i want to put variable `LI` into `arrayMissingLI` and `LN` into `arrayLN` and use it in the Pickerview.

And here's i think :

    if userData.type == "Missing" {

    //put all data from "LI" that variable "Type / T" is "Missing" that i got from `spinnerResponse?.data` and save it into arrayMissingLI
    //put all data from "LN" that variable "Type / T" is "Missing" that i got from `spinnerResponse?.data` and save it into arrayMissingLN

    }

if i use `self.userData = spinnerResponse?.data!`, it'll show `Cannot assign value of type '[clsReqData]?' to type 'clsReqData'` error.

How can i solve this problem so i can filter those array and use it in the `PickerView` for showing the data if i choose `Missing, Out,` and `In`