     /// Duration of the clip, otherwise invalid.
     public var duration: CMTime {
         get {
-            if let asset = self.asset {
-                return asset.duration
-            }
-            return kCMTimeZero
+            return self.asset?.duration ?? kCMTimeZero
         }
     }
   

/// NextLevelClip, an object for managing a single media clip
public class NextLevelClip {

    public var uuid: UUID {
        get {
            return self._uuid

    /// Frame rate at which the asset was recorded.
    public var frameRate: Float {
        get {
            if let tracks = self.asset?.tracks(withMediaType: AVMediaType.video),
                tracks.isEmpty == false {
                if let videoTrack = tracks.first {
                    return videoTrack.nominalFrameRate
                }
            }
            return 0
