def getMesh(self, charType='', charRace='', charVariant='', charGender='', combined='', **kwargs):
        # NOTE: Must pass all these args or none. If you want to set individuals, use .set[Var] method
        """ Method to pass back mesh file path """
        if charType:
            self.charType = charType
            self.charRace = charRace
            self.charVariant = charVariant
            self.charGender = charGender
            self.fileName = charVariant  #self.fileName doesn't exist if these args are passed
        #so search charVariant arg instead of fileName

        target = 'Mesh'

        # check charVariant for explicitly set fileName
        explicit = 0
        if re.search('_', self.charVariant):
            explicit = 1
        if not explicit:
            if self.team == gv.teamA:
                if re.search('body', self.fileName):
                    target = 'Body' + target
                if re.search('head', self.fileName):
                    target = 'Head' + target

            elif self.team == gv.teamD:
                if re.search('Body', self.fileName):
                    target = 'Body' + target
                if re.search('Head', self.fileName):
                    target = 'Head' + target

        # parse .xml
        self.folderKey = self.characterList.get('%sFolderKey' % target)
        self.nameKey = self.characterList.get(target % '%sNameKey')

        resultPath, resultFile = self._trailConstruct()
        if explicit:
            resultFile = '%s.ma' % self.charVariant

        self.result = '%s%s' % (resultPath, resultFile)

        if combined:
            if not combined == 1:
                self.result = self.result.replace('.ma', '_%s.ma' % combined)
            else:
                self.result = self.result.replace('.ma', '_combined.ma')
            if self.team == gv.teamA:
                # remove charVariant from combined file
                self.result = self.result.replace('_%s' % self.charVariant, '')
        if os.path.exists(self.result):
            return self.result
        else:
            self.pokeDir = self._trailConstruct()[0]
            if self.team == gv.teamA:
                self.pokeResult = self._pokeFiles(type='mesh')
            elif self.team == gv.teamD:
                self.pokeResult = self._pokeFiles(type='mesh')
            elif self.team == gv.teamD:
                self.pokeResult = self._pokeFiles()
            if 'pokeResult' in dir(self):
                if not self.pokeResult == None:
                    return self.pokeResult
            #else:
            #			if combined: mCore.errorDisplay("Failed to find meshFile '%s'. If no combined file, use combined=0" % self.result)
            if combined:
                logger.error("Failed to find meshFile '%s'. If no combined file, use combined=0" % self.result)
            else:
                logger.error("Failed to find meshFile. Wrong project? '%s'" % self.team)
dataset/ETHPy150Open CountZer0/PipelineConstructionSet/python/common/fileIO/parser_schema.py/RigParse.getMesh/swapped operands of `%`