   }
 
   private func defaultInit() {
-    uppercaseToggledLayout = CustomKeyboardLayout.UppercaseToggled.keyboardLayout
-    uppercaseLayout = CustomKeyboardLayout.Uppercase.keyboardLayout
-    lowercaseLayout = CustomKeyboardLayout.Lowercase.keyboardLayout
-    numbersLayout = CustomKeyboardLayout.Numbers.keyboardLayout
-    symbolsLayout = CustomKeyboardLayout.Symbols.keyboardLayout
-    
+    reload()
     currentLayout = uppercaseLayout
     addSubview(currentLayout)
   }
 
+  // MARK: Layout
   public override func layoutSubviews() {
     super.layoutSubviews()
     currentLayout?.frame = CGRect(

  private var backspaceDeleteTimer: NSTimer?
  private var backspaceAutoDeleteModeTimer: NSTimer?

  private var lastLetterLayout: KeyboardLayout?
  private(set) var currentLayout: KeyboardLayout! {
    didSet {


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