 import UIKit
 
 /// Amount of excess information
-enum CNLQRCodeCorrectionLevel: String
-{
+public enum CNLQRCodeCorrectionLevel: String {
     case percent7 = "L"
     case percent15 = "M"
     case percent25 = "Q"

}

/// Class for generation QR code
struct CNLQRCodeGenerator {
    
    ///  Generates UIImage with QR code of the string with specified size and correction level
    ///

    ///   - size: Width and height of generated image
    ///   - correctionLevel: Amount of excess information
    /// - Returns: UIImage with QR code
    public static func generate(forString qrString: String, withSize size: CGFloat = 200.0, correctionLevel: CNLQRCodeCorrectionLevel = .percent25) -> UIImage? {
        if let stringData = qrString.data(using: String.Encoding.utf8), let qrFilter = CIFilter(name:"CIQRCodeGenerator") {
            qrFilter.setValue(stringData, forKey: "inputMessage")
            qrFilter.setValue(correctionLevel.rawValue, forKey: "inputCorrectionLevel")
