Type mismatch: inferred type is ArrayList

what is wrong in below implementation ? Same is working good in my previous version of package.

package knowyourdevice.fragments
import com.knowyourdevice.models.FeaturesHWModel
private fun fetchCameraCharacteristics(cameraManager: CameraManager, ids: String) {
val lists = ArrayList()
val sb = StringBuilder()
val characteristics = cameraManager.getCameraCharacteristics(ids)
for (key in characteristics.keys) { sb.append(key.name).append("=").append(getCharacteristicsValue(key, characteristics)).append("\n\n")
val keyNm = key.name.split(".")

        if (getCharacteristicsValue(key, characteristics) != "") {
            if (key.name.split(".").size == 4) {
                lists.add(FeaturesHWModel(keyNm[3], getCharacteristicsValue(key, characteristics)))
            } else {
                lists.add(FeaturesHWModel(keyNm[2], getCharacteristicsValue(key, characteristics)))
            }
        }
    }

    val adapter = CamaraAdapter(mActivity,lists)

    rvCameraFeatures?.adapter = adapter

}

package com.knowyourdevice.models

class FeaturesHWModel(var featureLable: String, var featureValue: String)

Type mismatch: inferred type is ArrayList<com.knowyourdevice.models.FeaturesHWModel> but ArrayList<FeaturesHWModel!>! was expected

In what line does the error appear?