def copyInputShapeAttrs(geoList=[]):
    '\n\tCopy user defined attributes from an input shape to the output deforming shape.\n\t@param geoList: List of geometry to copy atributes for.\n\t@type geoList: list\n\t'
    if (not geoList):
        geoList = (mc.listRelatives((mc.ls(geometry=True) or []), p=True, pa=True) or [])
    if (not geoList):
        return []
    for geo in geoList:
        geoShape = (mc.listRelatives(geo, s=True, ni=True) or [])
        if (not geoShape):
            print((('No shape found for geometry transform "' + geo) + '"!'))
            continue
        geoInputShape = geoShape[0]
        try:
            geoInputShape = glTools.utils.shape.findInputShape(geoShape[0])
        except:
            pass
        if (geoInputShape != geoShape[0]):
            userAttr = (mc.listAttr(geoInputShape, ud=True, s=True) or [])
            for at in userAttr:
                glTools.utils.attribute.copyAttr(geoInputShape, geoShape[0], at)
Copy user defined attributes from an input shape to the output deforming shape.
@param geoList: List of geometry to copy atributes for.
@type geoList: list
def copyInputShapeAttrs(geoList=[]):
    '\n\tCopy user defined attributes from an input shape to the output deforming shape.\n\t@param geoList: List of geometry to copy atributes for.\n\t@type geoList: list\n\t'
    if (not geoList):
        geoList = (mc.listRelatives((mc.ls(geometry=True) or []), p=True, pa=True) or [])
    if (not geoList):
        return []
    for geo in geoList:
        geoShape = (mc.listRelatives(geo, s=True, ni=True) or [])
        if (not geoShape):
            print((('No shape found for geometry transform "' + geo) + '"!'))
            continue
        geoInputShape = geoShape[0]
        try:
            geoInputShape = glTools.utils.shape.findInputShape(geoShape[0])
        except:
            pass
        if (geoInputShape != geoShape[0]):
            userAttr = (mc.listAttr(geoInputShape, ud=True, s=True) or [])
            for at in userAttr:
                glTools.utils.attribute.copyAttr(geoInputShape, geoShape[0], at)