       y: 0,
       width: frame.size.width,
       height: frame.size.height)
+  }
+
+  // MARK: Reload
+  public func reload() {
+    uppercaseToggledLayout = CustomKeyboardLayout.UppercaseToggled.keyboardLayout
+    uppercaseLayout = CustomKeyboardLayout.Uppercase.keyboardLayout
+    lowercaseLayout = CustomKeyboardLayout.Lowercase.keyboardLayout
+    numbersLayout = CustomKeyboardLayout.Numbers.keyboardLayout
+    symbolsLayout = CustomKeyboardLayout.Symbols.keyboardLayout
   }
 
   // MARK: Backspace Auto Delete

  }

  private func defaultInit() {
    uppercaseToggledLayout = CustomKeyboardLayout.UppercaseToggled.keyboardLayout
    uppercaseLayout = CustomKeyboardLayout.Uppercase.keyboardLayout
    lowercaseLayout = CustomKeyboardLayout.Lowercase.keyboardLayout
    numbersLayout = CustomKeyboardLayout.Numbers.keyboardLayout
    symbolsLayout = CustomKeyboardLayout.Symbols.keyboardLayout
    
    currentLayout = uppercaseLayout
    addSubview(currentLayout)
  }

  public override func layoutSubviews() {
    super.layoutSubviews()
    currentLayout?.frame = CGRect(


// MARK: - CustomKeyboard
public class CustomKeyboard: UIView, KeyboardLayoutDelegate {
  public var shiftToggleInterval: NSTimeInterval = 0.5
  private var shiftToggleTimer: NSTimer?
  private var shiftCanBeToggled: Bool = false
