//
//  TestStyleKit.swift
//  Silica
//
//  Created by Alsey Coleman Miller on 10/5/16.
//  Copyright © 2016 PureSwift. All rights reserved.
//
//  Generated by PaintCode
//  http://www.paintcodeapp.com

#if os(Linux)
    import Glibc
#endif

import Foundation
@testable import Silica

public final class TestStyleKit : NSObject {

    //// Cache

    private struct Cache {
        static let wirelessBlue: UIColor = UIColor(red: 0.278, green: 0.506, blue: 0.976, alpha: 1.000)
    }

    //// Colors

    public class var wirelessBlue: UIColor { return Cache.wirelessBlue }

    //// Drawing Methods

    public class func drawSimpleShapes() {
        //// Color Declarations
        let red = UIColor(red: 1.000, green: 0.000, blue: 0.000, alpha: 1.000)
        let white = UIColor(red: 1.000, green: 1.000, blue: 1.000, alpha: 1.000)
        let blue = UIColor(red: 0.151, green: 0.277, blue: 0.801, alpha: 1.000)
        let green = UIColor(red: 0.320, green: 0.800, blue: 0.350, alpha: 1.000)

        //// Background Rectangle Drawing
        let backgroundRectanglePath = UIBezierPath(rect: CGRect(x: 0, y: 0, width: 240, height: 120))
        white.setFill()
        backgroundRectanglePath.fill()


        //// Rectangle 2 Drawing
        let rectangle2Path = UIBezierPath(rect: CGRect(x: 0, y: 0, width: 50, height: 50))
        red.setFill()
        rectangle2Path.fill()


        //// Polygon Drawing
        let polygonPath = UIBezierPath()
        polygonPath.move(to: CGPoint(x: 120, y: 0))
        polygonPath.addLine(to: CGPoint(x: 143.78, y: 17.27))
        polygonPath.addLine(to: CGPoint(x: 134.69, y: 45.23))
        polygonPath.addLine(to: CGPoint(x: 105.31, y: 45.23))
        polygonPath.addLine(to: CGPoint(x: 96.22, y: 17.27))
        polygonPath.close()
        green.setFill()
        polygonPath.fill()


        //// Star Drawing
        let starPath = UIBezierPath()
        starPath.move(to: CGPoint(x: 216, y: 0))
        starPath.addLine(to: CGPoint(x: 224.82, y: 12.86))
        starPath.addLine(to: CGPoint(x: 239.78, y: 17.27))
        starPath.addLine(to: CGPoint(x: 230.27, y: 29.64))
        starPath.addLine(to: CGPoint(x: 230.69, y: 45.23))
        starPath.addLine(to: CGPoint(x: 216, y: 40))
        starPath.addLine(to: CGPoint(x: 201.31, y: 45.23))
        starPath.addLine(to: CGPoint(x: 201.73, y: 29.64))
        starPath.addLine(to: CGPoint(x: 192.22, y: 17.27))
        starPath.addLine(to: CGPoint(x: 207.18, y: 12.86))
        starPath.close()
        blue.setFill()
        starPath.fill()


        //// Bezier Drawing
        let bezierPath = UIBezierPath()
        bezierPath.move(to: CGPoint(x: 50, y: 72))
        bezierPath.addLine(to: CGPoint(x: 0, y: 120))
        bezierPath.addLine(to: CGPoint(x: 50, y: 120))
        blue.setFill()
        bezierPath.fill()


        //// Bezier 2 Drawing
        let bezier2Path = UIBezierPath()
        bezier2Path.move(to: CGPoint(x: 119, y: 75))
        bezier2Path.addLine(to: CGPoint(x: 103, y: 82))
        bezier2Path.addLine(to: CGPoint(x: 96, y: 89))
        bezier2Path.addLine(to: CGPoint(x: 96, y: 98))
        bezier2Path.addLine(to: CGPoint(x: 96, y: 110))
        bezier2Path.addLine(to: CGPoint(x: 96, y: 120))
        bezier2Path.addLine(to: CGPoint(x: 103, y: 120))
        bezier2Path.addLine(to: CGPoint(x: 119, y: 120))
        bezier2Path.addLine(to: CGPoint(x: 132, y: 120))
        bezier2Path.addLine(to: CGPoint(x: 137, y: 120))
        bezier2Path.addLine(to: CGPoint(x: 145, y: 98))
        bezier2Path.addLine(to: CGPoint(x: 145, y: 82))
        bezier2Path.addLine(to: CGPoint(x: 137, y: 75))
        red.setFill()
        bezier2Path.fill()


        //// Oval Drawing
        let ovalPath = UIBezierPath(ovalIn: CGRect(x: 190, y: 70, width: 50, height: 50))
        green.setFill()
        ovalPath.fill()
    }

    public class func drawAdvancedShapes() {
        //// General Declarations
        let context = UIGraphicsGetCurrentContext()!

        //// Color Declarations
        let black = UIColor(red: 0.064, green: 0.064, blue: 0.064, alpha: 1.000)

        //// Group 2
        context.saveGState()
        context.beginTransparencyLayer(auxiliaryInfo: nil)

        //// Clip Clip
        let clipPath = UIBezierPath()
        clipPath.move(to: CGPoint(x: 205.73, y: 113.5))
        clipPath.addLine(to: CGPoint(x: 200.48, y: 113.5))
        clipPath.addCurve(to: CGPoint(x: 196.72, y: 106.62), controlPoint1: CGPoint(x: 199.69, y: 113.5), controlPoint2: CGPoint(x: 199.41, y: 113.5))
        clipPath.addLine(to: CGPoint(x: 194.64, y: 105.75))
        clipPath.addCurve(to: CGPoint(x: 188.07, y: 108.4), controlPoint1: CGPoint(x: 188.97, y: 108.4), controlPoint2: CGPoint(x: 188.3, y: 108.4))
        clipPath.addLine(to: CGPoint(x: 187.64, y: 108.4))
        clipPath.addLine(to: CGPoint(x: 187.27, y: 108.07))
        clipPath.addLine(to: CGPoint(x: 183.54, y: 104.31))
        clipPath.addCurve(to: CGPoint(x: 185.69, y: 96.74), controlPoint1: CGPoint(x: 182.97, y: 103.73), controlPoint2: CGPoint(x: 182.78, y: 103.53))
        clipPath.addLine(to: CGPoint(x: 184.85, y: 94.67))
        clipPath.addCurve(to: CGPoint(x: 178, y: 91.01), controlPoint1: CGPoint(x: 178, y: 92.14), controlPoint2: CGPoint(x: 178, y: 91.85))
        clipPath.addLine(to: CGPoint(x: 178, y: 85.7))
        clipPath.addCurve(to: CGPoint(x: 184.82, y: 81.89), controlPoint1: CGPoint(x: 178, y: 84.87), controlPoint2: CGPoint(x: 178, y: 84.61))
        clipPath.addLine(to: CGPoint(x: 185.67, y: 79.82))
        clipPath.addCurve(to: CGPoint(x: 183.41, y: 72.33), controlPoint1: CGPoint(x: 182.59, y: 73.13), controlPoint2: CGPoint(x: 182.8, y: 72.92))
        clipPath.addLine(to: CGPoint(x: 187.41, y: 68.28))
        clipPath.addLine(to: CGPoint(x: 187.91, y: 68.27))
        clipPath.addCurve(to: CGPoint(x: 194.59, y: 70.77), controlPoint1: CGPoint(x: 188.52, y: 68.27), controlPoint2: CGPoint(x: 190.76, y: 69.11))
        clipPath.addLine(to: CGPoint(x: 196.66, y: 69.91))
        clipPath.addCurve(to: CGPoint(x: 200.26, y: 63), controlPoint1: CGPoint(x: 199.16, y: 63), controlPoint2: CGPoint(x: 199.47, y: 63))
        clipPath.addLine(to: CGPoint(x: 205.51, y: 63))
        clipPath.addCurve(to: CGPoint(x: 209.27, y: 69.88), controlPoint1: CGPoint(x: 206.3, y: 63), controlPoint2: CGPoint(x: 206.58, y: 63))
        clipPath.addLine(to: CGPoint(x: 211.35, y: 70.75))
        clipPath.addCurve(to: CGPoint(x: 217.92, y: 68.1), controlPoint1: CGPoint(x: 217.02, y: 68.1), controlPoint2: CGPoint(x: 217.7, y: 68.1))
        clipPath.addLine(to: CGPoint(x: 218.35, y: 68.1))
        clipPath.addLine(to: CGPoint(x: 218.72, y: 68.42))
        clipPath.addLine(to: CGPoint(x: 222.45, y: 72.17))
        clipPath.addCurve(to: CGPoint(x: 220.29, y: 79.76), controlPoint1: CGPoint(x: 223.02, y: 72.76), controlPoint2: CGPoint(x: 223.21, y: 72.96))
        clipPath.addLine(to: CGPoint(x: 221.14, y: 81.84))
        clipPath.addCurve(to: CGPoint(x: 228, y: 85.48), controlPoint1: CGPoint(x: 228, y: 84.36), controlPoint2: CGPoint(x: 228, y: 84.65))
        clipPath.addLine(to: CGPoint(x: 228, y: 90.79))
        clipPath.addCurve(to: CGPoint(x: 221.17, y: 94.61), controlPoint1: CGPoint(x: 228, y: 91.6), controlPoint2: CGPoint(x: 228, y: 91.89))
        clipPath.addLine(to: CGPoint(x: 220.32, y: 96.68))
        clipPath.addCurve(to: CGPoint(x: 222.62, y: 104.15), controlPoint1: CGPoint(x: 223.39, y: 103.34), controlPoint2: CGPoint(x: 223.19, y: 103.55))
        clipPath.addLine(to: CGPoint(x: 218.58, y: 108.22))
        clipPath.addLine(to: CGPoint(x: 218.08, y: 108.23))
        clipPath.addCurve(to: CGPoint(x: 211.42, y: 105.72), controlPoint1: CGPoint(x: 217.48, y: 108.23), controlPoint2: CGPoint(x: 215.24, y: 107.39))
        clipPath.addLine(to: CGPoint(x: 209.33, y: 106.59))
        clipPath.addCurve(to: CGPoint(x: 205.73, y: 113.5), controlPoint1: CGPoint(x: 206.82, y: 113.5), controlPoint2: CGPoint(x: 206.54, y: 113.5))
        clipPath.addLine(to: CGPoint(x: 205.73, y: 113.5))
        clipPath.close()
        clipPath.move(to: CGPoint(x: 201.03, y: 111.3))
        clipPath.addLine(to: CGPoint(x: 205.17, y: 111.3))
        clipPath.addCurve(to: CGPoint(x: 207.5, y: 105.37), controlPoint1: CGPoint(x: 205.65, y: 110.31), controlPoint2: CGPoint(x: 206.67, y: 107.66))
        clipPath.addLine(to: CGPoint(x: 207.66, y: 104.92))
        clipPath.addLine(to: CGPoint(x: 211.44, y: 103.35))
        clipPath.addLine(to: CGPoint(x: 211.84, y: 103.53))
        clipPath.addCurve(to: CGPoint(x: 217.79, y: 105.95), controlPoint1: CGPoint(x: 214.09, y: 104.51), controlPoint2: CGPoint(x: 216.75, y: 105.61))
        clipPath.addLine(to: CGPoint(x: 220.7, y: 103.01))
        clipPath.addCurve(to: CGPoint(x: 218.2, y: 97.18), controlPoint1: CGPoint(x: 220.33, y: 101.95), controlPoint2: CGPoint(x: 219.21, y: 99.37))
        clipPath.addLine(to: CGPoint(x: 217.99, y: 96.74))
        clipPath.addLine(to: CGPoint(x: 219.56, y: 92.9))
        clipPath.addLine(to: CGPoint(x: 219.98, y: 92.73))
        clipPath.addCurve(to: CGPoint(x: 225.87, y: 90.21), controlPoint1: CGPoint(x: 222.25, y: 91.83), controlPoint2: CGPoint(x: 224.89, y: 90.72))
        clipPath.addLine(to: CGPoint(x: 225.87, y: 86.08))
        clipPath.addCurve(to: CGPoint(x: 219.99, y: 83.75), controlPoint1: CGPoint(x: 224.87, y: 85.6), controlPoint2: CGPoint(x: 222.25, y: 84.57))
        clipPath.addLine(to: CGPoint(x: 219.55, y: 83.58))
        clipPath.addLine(to: CGPoint(x: 217.98, y: 79.74))
        clipPath.addLine(to: CGPoint(x: 218.17, y: 79.3))
        clipPath.addCurve(to: CGPoint(x: 220.55, y: 73.33), controlPoint1: CGPoint(x: 219.13, y: 77.05), controlPoint2: CGPoint(x: 220.21, y: 74.4))
        clipPath.addLine(to: CGPoint(x: 217.63, y: 70.39))
        clipPath.addCurve(to: CGPoint(x: 211.82, y: 72.94), controlPoint1: CGPoint(x: 216.69, y: 70.73), controlPoint2: CGPoint(x: 214.05, y: 71.89))
        clipPath.addLine(to: CGPoint(x: 211.41, y: 73.14))
        clipPath.addLine(to: CGPoint(x: 207.63, y: 71.57))
        clipPath.addLine(to: CGPoint(x: 207.47, y: 71.14))
        clipPath.addCurve(to: CGPoint(x: 204.96, y: 65.2), controlPoint1: CGPoint(x: 206.57, y: 68.84), controlPoint2: CGPoint(x: 205.46, y: 66.18))
        clipPath.addLine(to: CGPoint(x: 200.82, y: 65.2))
        clipPath.addCurve(to: CGPoint(x: 198.5, y: 71.12), controlPoint1: CGPoint(x: 200.34, y: 66.19), controlPoint2: CGPoint(x: 199.32, y: 68.84))
        clipPath.addLine(to: CGPoint(x: 198.33, y: 71.58))
        clipPath.addLine(to: CGPoint(x: 194.57, y: 73.15))
        clipPath.addLine(to: CGPoint(x: 194.16, y: 72.97))
        clipPath.addCurve(to: CGPoint(x: 188.21, y: 70.56), controlPoint1: CGPoint(x: 191.91, y: 71.99), controlPoint2: CGPoint(x: 189.25, y: 70.89))
        clipPath.addLine(to: CGPoint(x: 185.3, y: 73.49))
        clipPath.addCurve(to: CGPoint(x: 187.8, y: 79.32), controlPoint1: CGPoint(x: 185.66, y: 74.55), controlPoint2: CGPoint(x: 186.79, y: 77.13))
        clipPath.addLine(to: CGPoint(x: 188, y: 79.76))
        clipPath.addLine(to: CGPoint(x: 186.43, y: 83.6))
        clipPath.addLine(to: CGPoint(x: 186.01, y: 83.77))
        clipPath.addCurve(to: CGPoint(x: 180.13, y: 86.29), controlPoint1: CGPoint(x: 183.74, y: 84.67), controlPoint2: CGPoint(x: 181.11, y: 85.78))
        clipPath.addLine(to: CGPoint(x: 180.13, y: 90.42))
        clipPath.addCurve(to: CGPoint(x: 186, y: 92.76), controlPoint1: CGPoint(x: 181.13, y: 90.9), controlPoint2: CGPoint(x: 183.75, y: 91.93))
        clipPath.addLine(to: CGPoint(x: 186.44, y: 92.93))
        clipPath.addLine(to: CGPoint(x: 188.02, y: 96.76))
        clipPath.addLine(to: CGPoint(x: 187.83, y: 97.19))
        clipPath.addCurve(to: CGPoint(x: 185.44, y: 103.16), controlPoint1: CGPoint(x: 186.86, y: 99.44), controlPoint2: CGPoint(x: 185.79, y: 102.09))
        clipPath.addLine(to: CGPoint(x: 188.37, y: 106.11))
        clipPath.addCurve(to: CGPoint(x: 194.17, y: 103.55), controlPoint1: CGPoint(x: 189.31, y: 105.77), controlPoint2: CGPoint(x: 191.94, y: 104.6))
        clipPath.addLine(to: CGPoint(x: 194.59, y: 103.36))
        clipPath.addLine(to: CGPoint(x: 198.36, y: 104.93))
        clipPath.addLine(to: CGPoint(x: 198.53, y: 105.37))
        clipPath.addCurve(to: CGPoint(x: 201.03, y: 111.3), controlPoint1: CGPoint(x: 199.42, y: 107.66), controlPoint2: CGPoint(x: 200.53, y: 110.32))
        clipPath.addLine(to: CGPoint(x: 201.03, y: 111.3))
        clipPath.close()
        clipPath.move(to: CGPoint(x: 203, y: 97.09))
        clipPath.addCurve(to: CGPoint(x: 194.26, y: 88.25), controlPoint1: CGPoint(x: 198.18, y: 97.09), controlPoint2: CGPoint(x: 194.26, y: 93.12))
        clipPath.addCurve(to: CGPoint(x: 203, y: 79.42), controlPoint1: CGPoint(x: 194.26, y: 83.38), controlPoint2: CGPoint(x: 198.18, y: 79.42))
        clipPath.addCurve(to: CGPoint(x: 211.73, y: 88.25), controlPoint1: CGPoint(x: 207.82, y: 79.42), controlPoint2: CGPoint(x: 211.73, y: 83.38))
        clipPath.addCurve(to: CGPoint(x: 203, y: 97.09), controlPoint1: CGPoint(x: 211.73, y: 93.12), controlPoint2: CGPoint(x: 207.82, y: 97.09))
        clipPath.addLine(to: CGPoint(x: 203, y: 97.09))
        clipPath.close()
        clipPath.move(to: CGPoint(x: 203, y: 81.61))
        clipPath.addCurve(to: CGPoint(x: 196.39, y: 88.25), controlPoint1: CGPoint(x: 199.35, y: 81.61), controlPoint2: CGPoint(x: 196.39, y: 84.59))
        clipPath.addCurve(to: CGPoint(x: 203, y: 94.89), controlPoint1: CGPoint(x: 196.39, y: 91.91), controlPoint2: CGPoint(x: 199.35, y: 94.89))
        clipPath.addCurve(to: CGPoint(x: 209.6, y: 88.25), controlPoint1: CGPoint(x: 206.64, y: 94.89), controlPoint2: CGPoint(x: 209.6, y: 91.91))
        clipPath.addCurve(to: CGPoint(x: 203, y: 81.61), controlPoint1: CGPoint(x: 209.6, y: 84.59), controlPoint2: CGPoint(x: 206.64, y: 81.61))
        clipPath.addLine(to: CGPoint(x: 203, y: 81.61))
        clipPath.close()
        clipPath.usesEvenOddFillRule = true
        clipPath.addClip()


        //// Rectangle 2 Drawing
        let rectangle2Path = UIBezierPath(rect: CGRect(x: 168, y: 52.99, width: 70, height: 70.5))
        black.setFill()
        rectangle2Path.fill()


        context.endTransparencyLayer()
        context.restoreGState()


        //// Group
        //// Bezier Drawing
        let bezierPath = UIBezierPath()
        bezierPath.move(to: CGPoint(x: 40.56, y: 73.99))
        bezierPath.addLine(to: CGPoint(x: 44, y: 77.44))
        bezierPath.addLine(to: CGPoint(x: 47.44, y: 73.99))
        bezierPath.addCurve(to: CGPoint(x: 44, y: 72.42), controlPoint1: CGPoint(x: 46.5, y: 73.05), controlPoint2: CGPoint(x: 45.25, y: 72.42))
        bezierPath.addCurve(to: CGPoint(x: 40.56, y: 73.99), controlPoint1: CGPoint(x: 42.75, y: 72.42), controlPoint2: CGPoint(x: 41.19, y: 73.05))
        bezierPath.close()
        TestStyleKit.wirelessBlue.setFill()
        bezierPath.fill()


        //// Bezier 2 Drawing
        let bezier2Path = UIBezierPath()
        bezier2Path.move(to: CGPoint(x: 44, y: 47.02))
        bezier2Path.addCurve(to: CGPoint(x: 65.56, y: 55.8), controlPoint1: CGPoint(x: 52.44, y: 47.02), controlPoint2: CGPoint(x: 59.94, y: 50.47))
        bezier2Path.addLine(to: CGPoint(x: 69, y: 52.35))
        bezier2Path.addCurve(to: CGPoint(x: 44, y: 42), controlPoint1: CGPoint(x: 62.75, y: 46.08), controlPoint2: CGPoint(x: 53.69, y: 42))
        bezier2Path.addCurve(to: CGPoint(x: 19, y: 52.35), controlPoint1: CGPoint(x: 34.31, y: 42), controlPoint2: CGPoint(x: 25.25, y: 46.08))
        bezier2Path.addLine(to: CGPoint(x: 22.44, y: 55.8))
        bezier2Path.addCurve(to: CGPoint(x: 44, y: 47.02), controlPoint1: CGPoint(x: 28.06, y: 50.47), controlPoint2: CGPoint(x: 35.56, y: 47.02))
        bezier2Path.close()
        TestStyleKit.wirelessBlue.setFill()
        bezier2Path.fill()


        //// Bezier 3 Drawing
        let bezier3Path = UIBezierPath()
        bezier3Path.move(to: CGPoint(x: 26.19, y: 59.56))
        bezier3Path.addLine(to: CGPoint(x: 29.62, y: 63.01))
        bezier3Path.addCurve(to: CGPoint(x: 44, y: 57.37), controlPoint1: CGPoint(x: 33.38, y: 59.56), controlPoint2: CGPoint(x: 38.38, y: 57.37))
        bezier3Path.addCurve(to: CGPoint(x: 58.38, y: 63.33), controlPoint1: CGPoint(x: 49.62, y: 57.37), controlPoint2: CGPoint(x: 54.62, y: 59.56))
        bezier3Path.addLine(to: CGPoint(x: 61.81, y: 59.88))
        bezier3Path.addCurve(to: CGPoint(x: 44, y: 52.04), controlPoint1: CGPoint(x: 57.44, y: 54.86), controlPoint2: CGPoint(x: 50.87, y: 52.04))
        bezier3Path.addCurve(to: CGPoint(x: 26.19, y: 59.56), controlPoint1: CGPoint(x: 37.12, y: 52.04), controlPoint2: CGPoint(x: 30.56, y: 54.86))
        bezier3Path.close()
        TestStyleKit.wirelessBlue.setFill()
        bezier3Path.fill()


        //// Bezier 4 Drawing
        let bezier4Path = UIBezierPath()
        bezier4Path.move(to: CGPoint(x: 33.38, y: 66.77))
        bezier4Path.addLine(to: CGPoint(x: 36.81, y: 70.22))
        bezier4Path.addCurve(to: CGPoint(x: 44, y: 67.4), controlPoint1: CGPoint(x: 38.69, y: 68.34), controlPoint2: CGPoint(x: 41.19, y: 67.4))
        bezier4Path.addCurve(to: CGPoint(x: 51.19, y: 70.22), controlPoint1: CGPoint(x: 46.81, y: 67.4), controlPoint2: CGPoint(x: 49.31, y: 68.66))
        bezier4Path.addLine(to: CGPoint(x: 54.62, y: 66.77))
        bezier4Path.addCurve(to: CGPoint(x: 44, y: 62.38), controlPoint1: CGPoint(x: 52.12, y: 63.95), controlPoint2: CGPoint(x: 48.06, y: 62.38))
        bezier4Path.addCurve(to: CGPoint(x: 33.38, y: 66.77), controlPoint1: CGPoint(x: 39.94, y: 62.38), controlPoint2: CGPoint(x: 35.88, y: 63.95))
        bezier4Path.close()
        TestStyleKit.wirelessBlue.setFill()
        bezier4Path.fill()




        //// Group 3
        //// Page-1
        //// Bluetooth_Smart_Logo
        //// Shape Drawing
        let shapePath = UIBezierPath()
        shapePath.move(to: CGPoint(x: 122.04, y: 44.11))
        shapePath.addLine(to: CGPoint(x: 127.1, y: 49.17))
        shapePath.addLine(to: CGPoint(x: 122.04, y: 54.23))
        shapePath.addLine(to: CGPoint(x: 122.04, y: 44.11))
        shapePath.addLine(to: CGPoint(x: 122.04, y: 44.11))
        shapePath.close()
        shapePath.move(to: CGPoint(x: 122.04, y: 75.07))
        shapePath.addLine(to: CGPoint(x: 127.1, y: 70.01))
        shapePath.addLine(to: CGPoint(x: 122.04, y: 64.97))
        shapePath.addLine(to: CGPoint(x: 122.04, y: 75.07))
        shapePath.addLine(to: CGPoint(x: 122.04, y: 75.07))
        shapePath.close()
        shapePath.move(to: CGPoint(x: 116.64, y: 59.6))
        shapePath.addLine(to: CGPoint(x: 105.71, y: 48.63))
        shapePath.addLine(to: CGPoint(x: 108.88, y: 45.46))
        shapePath.addLine(to: CGPoint(x: 117.59, y: 54.17))
        shapePath.addLine(to: CGPoint(x: 117.59, y: 33.29))
        shapePath.addLine(to: CGPoint(x: 133.43, y: 49.13))
        shapePath.addLine(to: CGPoint(x: 122.97, y: 59.6))
        shapePath.addLine(to: CGPoint(x: 133.43, y: 70.05))
        shapePath.addLine(to: CGPoint(x: 117.59, y: 85.89))
        shapePath.addLine(to: CGPoint(x: 117.59, y: 65.02))
        shapePath.addLine(to: CGPoint(x: 108.88, y: 73.72))
        shapePath.addLine(to: CGPoint(x: 105.71, y: 70.55))
        shapePath.addLine(to: CGPoint(x: 116.64, y: 59.6))
        shapePath.addLine(to: CGPoint(x: 116.64, y: 59.6))
        shapePath.close()
        shapePath.move(to: CGPoint(x: 119.57, y: 90.18))
        shapePath.addCurve(to: CGPoint(x: 142.13, y: 59.6), controlPoint1: CGPoint(x: 132.93, y: 90.18), controlPoint2: CGPoint(x: 142.13, y: 83.83))
        shapePath.addCurve(to: CGPoint(x: 119.57, y: 29), controlPoint1: CGPoint(x: 142.13, y: 35.35), controlPoint2: CGPoint(x: 132.93, y: 29))
        shapePath.addCurve(to: CGPoint(x: 97, y: 59.6), controlPoint1: CGPoint(x: 106.22, y: 29), controlPoint2: CGPoint(x: 97, y: 35.35))
        shapePath.addCurve(to: CGPoint(x: 119.57, y: 90.18), controlPoint1: CGPoint(x: 97, y: 83.83), controlPoint2: CGPoint(x: 106.22, y: 90.18))
        shapePath.addLine(to: CGPoint(x: 119.57, y: 90.18))
        shapePath.addLine(to: CGPoint(x: 119.57, y: 90.18))
        shapePath.close()
        TestStyleKit.wirelessBlue.setFill()
        shapePath.fill()








        //// key.svg Group
        //// Group 4
        //// Bezier 5 Drawing
        let bezier5Path = UIBezierPath()
        bezier5Path.move(to: CGPoint(x: 199.25, y: 16.5))
        bezier5Path.addCurve(to: CGPoint(x: 190.5, y: 25.25), controlPoint1: CGPoint(x: 194.38, y: 16.5), controlPoint2: CGPoint(x: 190.5, y: 20.38))
        bezier5Path.addCurve(to: CGPoint(x: 199.25, y: 34), controlPoint1: CGPoint(x: 190.5, y: 30.12), controlPoint2: CGPoint(x: 194.38, y: 34))
        bezier5Path.addCurve(to: CGPoint(x: 208, y: 25.25), controlPoint1: CGPoint(x: 204.12, y: 34), controlPoint2: CGPoint(x: 208, y: 30.12))
        bezier5Path.addCurve(to: CGPoint(x: 199.25, y: 16.5), controlPoint1: CGPoint(x: 208, y: 20.38), controlPoint2: CGPoint(x: 204.12, y: 16.5))
        bezier5Path.close()
        bezier5Path.move(to: CGPoint(x: 197.38, y: 26.5))
        bezier5Path.addCurve(to: CGPoint(x: 194.25, y: 23.38), controlPoint1: CGPoint(x: 195.62, y: 26.5), controlPoint2: CGPoint(x: 194.25, y: 25.12))
        bezier5Path.addCurve(to: CGPoint(x: 197.38, y: 20.25), controlPoint1: CGPoint(x: 194.25, y: 21.62), controlPoint2: CGPoint(x: 195.62, y: 20.25))
        bezier5Path.addCurve(to: CGPoint(x: 200.5, y: 23.38), controlPoint1: CGPoint(x: 199.12, y: 20.25), controlPoint2: CGPoint(x: 200.5, y: 21.62))
        bezier5Path.addCurve(to: CGPoint(x: 197.38, y: 26.5), controlPoint1: CGPoint(x: 200.5, y: 25.12), controlPoint2: CGPoint(x: 199.12, y: 26.5))
        bezier5Path.close()
        black.setFill()
        bezier5Path.fill()


        //// Bezier 6 Drawing
        let bezier6Path = UIBezierPath()
        bezier6Path.move(to: CGPoint(x: 206.75, y: 27.75))
        bezier6Path.addLine(to: CGPoint(x: 201.75, y: 32.75))
        bezier6Path.addLine(to: CGPoint(x: 204.25, y: 35.25))
        bezier6Path.addLine(to: CGPoint(x: 204.25, y: 35.25))
        bezier6Path.addLine(to: CGPoint(x: 206.75, y: 35.25))
        bezier6Path.addLine(to: CGPoint(x: 206.75, y: 37.75))
        bezier6Path.addLine(to: CGPoint(x: 206.75, y: 37.75))
        bezier6Path.addLine(to: CGPoint(x: 209.25, y: 37.75))
        bezier6Path.addLine(to: CGPoint(x: 209.25, y: 40.25))
        bezier6Path.addLine(to: CGPoint(x: 210.12, y: 41.12))
        bezier6Path.addCurve(to: CGPoint(x: 211, y: 41.5), controlPoint1: CGPoint(x: 210.38, y: 41.38), controlPoint2: CGPoint(x: 210.62, y: 41.5))
        bezier6Path.addLine(to: CGPoint(x: 214.25, y: 41.5))
        bezier6Path.addCurve(to: CGPoint(x: 215.5, y: 40.25), controlPoint1: CGPoint(x: 215, y: 41.5), controlPoint2: CGPoint(x: 215.5, y: 41))
        bezier6Path.addLine(to: CGPoint(x: 215.5, y: 37))
        bezier6Path.addCurve(to: CGPoint(x: 215.12, y: 36.12), controlPoint1: CGPoint(x: 215.5, y: 36.63), controlPoint2: CGPoint(x: 215.38, y: 36.38))
        bezier6Path.addLine(to: CGPoint(x: 206.75, y: 27.75))
        bezier6Path.close()
        black.setFill()
        bezier6Path.fill()
    }
    
    public class func drawImagePNG() {
        
        //// General Declarations
        let context = UIGraphicsGetCurrentContext()!
        
        ///// Image Declarations
        let png = UIImage(named: "png.png")!
        let basn0g01 = UIImage(named: "basn0g01.png")!
        let basn0g02 = UIImage(named: "basn0g02.png")!
        let basn0g04 = UIImage(named: "basn0g04.png")!
        let basn0g08 = UIImage(named: "basn0g08.png")!
        let basn0g16 = UIImage(named: "basn0g16.png")!
        
        //// Pig Drawing
        context.saveGState()
        context.translateBy(x: -1, y: -16.31)
        
        let pigPath = UIBezierPath(rect: CGRect(x: 1, y: 16.31, width: 101, height: 104))
        context.saveGState()
        pigPath.addClip()
        context.translateBy(x: 1, y: 16)
        context.scaleBy(x: 1, y: -1)
        context.translateBy(x: 0, y: -png.size.height)
        context.draw(png.cgImage, in: CGRect(x: 0, y: 0, width: png.size.width, height: png.size.height))
        context.restoreGState()
        
        context.restoreGState()
        
        
        //// test1 Drawing
        let test1Path = UIBezierPath(rect: CGRect(x: 0, y: 104, width: 32, height: 32))
        context.saveGState()
        test1Path.addClip()
        context.translateBy(x: 0, y: 104)
        context.scaleBy(x: 1, y: -1)
        context.translateBy(x: 0, y: -basn0g01.size.height)
        context.draw(basn0g01.cgImage, in: CGRect(x: 0, y: 0, width: basn0g01.size.width, height: basn0g01.size.height))
        context.restoreGState()
        
        
        //// test2 Drawing
        let test2Path = UIBezierPath(rect: CGRect(x: 32, y: 104, width: 32, height: 32))
        context.saveGState()
        test2Path.addClip()
        context.translateBy(x: 32, y: 104)
        context.scaleBy(x: 1, y: -1)
        context.translateBy(x: 0, y: -basn0g02.size.height)
        context.draw(basn0g02.cgImage, in: CGRect(x: 0, y: 0, width: basn0g02.size.width, height: basn0g02.size.height))
        context.restoreGState()
        
        
        //// test3 Drawing
        let test3Path = UIBezierPath(rect: CGRect(x: 64, y: 104, width: 32, height: 32))
        context.saveGState()
        test3Path.addClip()
        context.translateBy(x: 64, y: 104)
        context.scaleBy(x: 1, y: -1)
        context.translateBy(x: 0, y: -basn0g04.size.height)
        context.draw(basn0g04.cgImage, in: CGRect(x: 0, y: 0, width: basn0g04.size.width, height: basn0g04.size.height))
        context.restoreGState()
        
        
        //// test4 Drawing
        let test4Path = UIBezierPath(rect: CGRect(x: 96, y: 104, width: 32, height: 32))
        context.saveGState()
        test4Path.addClip()
        context.translateBy(x: 96, y: 104)
        context.scaleBy(x: 1, y: -1)
        context.translateBy(x: 0, y: -basn0g08.size.height)
        context.draw(basn0g08.cgImage, in: CGRect(x: 0, y: 0, width: basn0g08.size.width, height: basn0g08.size.height))
        context.restoreGState()
        
        
        //// test5 Drawing
        let test5Path = UIBezierPath(rect: CGRect(x: 128, y: 104, width: 32, height: 32))
        context.saveGState()
        test5Path.addClip()
        context.translateBy(x: 128, y: 104)
        context.scaleBy(x: 1, y: -1)
        context.translateBy(x: 0, y: -basn0g16.size.height)
        context.draw(basn0g16.cgImage, in: CGRect(x: 0, y: 0, width: basn0g16.size.width, height: basn0g16.size.height))
        context.restoreGState()
    }
}
