Index: gc_core/py/lang_core/gc_engine.py
==================================================================
--- gc_core/py/lang_core/gc_engine.py
+++ gc_core/py/lang_core/gc_engine.py
@@ -711,26 +711,21 @@
                     bTokenFound = True
         # meta arc (for token type)
         if "<meta>" in dNode:
             for sMeta in dNode["<meta>"]:
                 # no regex here, we just search if <dNode["sType"]> exists within <sMeta>
-                if sMeta == "*":
+                if sMeta == "*" or dToken["sType"] == sMeta:
                     if bDebug:
                         print("  MATCH: *" + sMeta)
-                    yield { "iNode1": iNode1, "dNode": dGraph[dNode["<meta>"]["*"]] }
+                    yield { "iNode1": iNode1, "dNode": dGraph[dNode["<meta>"][sMeta]] }
                     bTokenFound = True
                 elif "¬" in sMeta:
                     if dToken["sType"] not in sMeta:
                         if bDebug:
                             print("  MATCH: *" + sMeta)
                         yield { "iNode1": iNode1, "dNode": dGraph[dNode["<meta>"][sMeta]] }
                         bTokenFound = True
-                elif dToken["sType"] == sMeta:
-                    if bDebug:
-                        print("  MATCH: *" + sMeta)
-                    yield { "iNode1": iNode1, "dNode": dGraph[dNode["<meta>"][sMeta]] }
-                    bTokenFound = True
         if "bKeep" in dPointer and not bTokenFound:
             yield dPointer
         # JUMP
         # Warning! Recurssion!
         if "<>" in dNode: