         super.viewDidLoad()
         LocationManager.sharedManager.delegate = self
         gestureDelegate = self
+        findMeButton = createFindMeButton()
     }
 
     override public func viewWillAppear(animated: Bool) {

        findMeButton.sizeToFit()
    }

    static func createFindMeButton() -> UIButton {
        let findMeButton = UIButton(type: UIButtonType.Custom)
        findMeButton.addTarget(self, action: #selector(defaultFindMeAction), forControlEvents: .TouchUpInside)
        findMeButton.enabled = false
        findMeButton.hidden = true
        findMeButton.adjustsImageWhenHighlighted = false

    var lastSetPoint: TGGeoPoint?
    var shouldShowCurrentLocation = false
    public var shouldFollowCurrentLocation = false
    public var findMeButton = UIButton(type: .Custom)

    init(){
        super.init(nibName: nil, bundle: nil)
        defer {
            findMeButton = createFindMeButton()
        }
    }
    
    required public init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        defer {
            findMeButton = createFindMeButton()
        }
    }

    //! Returns whether or not the map was centered on the device's current location
    public func resetCameraOnCurrentLocation(tilt: Float = 0.0, zoomLevel: Float = 16.0, animationDuration: Float = 1.0) -> Bool {
