 }
 
 public struct OMIDFriendlyObstruction {
-  let view: UIView
-  let obstructionType: OMIDFriendlyObstructionType
-  let reason: String?
+  
+  public weak var view: UIView?
+  public var obstructionType: OMIDFriendlyObstructionType
+  public var reason: String?
+  
+  public init(view: UIView, obstructionType: OMIDFriendlyObstructionType, reason: String? = nil) {
+    self.view = view
+    self.obstructionType = obstructionType
+    self.reason = reason
+  }
 }
 
 private struct EmbedderProperties: Codable {

  public init(parameters: [String: Any], baseUrl: URL? = nil, accessToken: String? = nil,
              cookies: [HTTPCookie]? = nil, allowIDFA: Bool = true, allowPiP: Bool = true, allowAudioSessionActive: Bool = true, omidFriendlyObstructions: [OMIDFriendlyObstruction]? = nil) {
    super.init(nibName: nil, bundle: nil)
    
    self.omidFriendlyObstructions = omidFriendlyObstructions
    self.allowAudioSessionActive = allowAudioSessionActive
    
    if OMIDDailymotionSDK.shared.isActive {

  private var omidSession: OMIDDailymotionAdSession?
  private var isAdPaused = false
  private var allowIDFA = true
  private var omidFriendlyObstructions: [OMIDFriendlyObstruction] = []
  
  override open var shouldAutorotate: Bool {
    return true
