             self.text = text
             if let path = createBorderPathForText() {
                 let border = SKShapeNode()
-
+                
                 border.strokeColor = borderColor
                 border.lineWidth = 7;
                 border.path = path
-                border.position = positionBorder(border)
+                border.position = positionBorder(border: border)
                 addChild(border)
                 
                 self.border = border

        let sizeText = self.calculateAccumulatedFrame()
        let sizeBorder = border.calculateAccumulatedFrame()
        let offsetX = (sizeBorder.width - sizeText.width) / 2
        
        return CGPointMake(-(sizeBorder.width / 2) + offsetX, 1)
    }
}

    private func getTextAsCharArray() -> [UniChar] {
        var chars = [UniChar]()
        
        for codeUnit in (text?.utf16)! {
            chars.append(codeUnit)
        }
        return chars
    }
    
    private func createBorderPathForText() -> CGPath? {
        let chars = getTextAsCharArray()
        let borderFont = CTFontCreateWithName(self.fontName as CFString?, self.fontSize, nil)
        
        var glyphs = Array<CGGlyph>(repeating: 0, count: chars.count)
        let gotGlyphs = CTFontGetGlyphsForCharacters(borderFont, chars, &glyphs, chars.count)
        
        if gotGlyphs {
            var advances = Array<CGSize>(repeating: CGSize(), count: chars.count)
            CTFontGetAdvancesForGlyphs(borderFont, CTFontOrientation.horizontal, glyphs, &advances, chars.count);
            
            let letters = CGMutablePath()
            var xPosition = 0 as CGFloat
            for index in 0...(chars.count - 1) {
                let letter = CTFontCreatePathForGlyph(borderFont, glyphs[index], nil)
                let t = CGAffineTransform(translationX: xPosition , y: 0)
                letters.addPath(letter!, transform: t)
                xPosition = xPosition + advances[index].width
            }
            
