       (l/all
         (world/type-packageName ?type "damp.ekeko.aspectj.annotationtests")
         (annotations/excluding|type-key-val ?type ?key ?val)))
-    "#{(\"damp.ekeko.aspectj.annotationtests.REFix3\" \"type\" \"[Aspect3c]\") (\"damp.ekeko.aspectj.annotationtests.REFix4\" \"label\" \"[Label4b]\") (\"damp.ekeko.aspectj.annotationtests.REFix1\" \"label\" \"[Label1]\") (\"damp.ekeko.aspectj.annotationtests.REFix4\" \"type\" \"[Aspect4c]\") (\"damp.ekeko.aspectj.annotationtests.REFix2\" \"type\" \"[Aspect2]\") (\"damp.ekeko.aspectj.annotationtests.REFix3\" \"label\" \"[Label3b Label3c]\")}"))
+    "#{(\"damp.ekeko.aspectj.annotationtests.REFix2\" \"type\" \"[\\\"Aspect2\\\"]\") (\"damp.ekeko.aspectj.annotationtests.REFix3\" \"type\" \"[\\\"Aspect3c\\\"]\") (\"damp.ekeko.aspectj.annotationtests.REFix1\" \"label\" \"[\\\"Label1\\\"]\") (\"damp.ekeko.aspectj.annotationtests.REFix3\" \"label\" \"[\\\"Label3b\\\" \\\"Label3c\\\"]\") (\"damp.ekeko.aspectj.annotationtests.REFix4\" \"label\" \"[\\\"Label4b\\\"]\") (\"damp.ekeko.aspectj.annotationtests.REFix4\" \"type\" \"[\\\"Aspect4c\\\"]\")}"))
 
 (deftest test-annotation-oneOf
   (test/tuples-correspond

      (l/all
        (world/type-packageName ?type "damp.ekeko.aspectj.annotationtests")
        (annotations/oneOfing|type-key-val ?type ?key ?val)))
    "#{(\"damp.ekeko.aspectj.annotationtests.OOFix3\" \"label\" \"[Label3a Label3b]\") (\"damp.ekeko.aspectj.annotationtests.OOFix1\" \"type\" \"[Aspect1a Aspect1b]\") (\"damp.ekeko.aspectj.annotationtests.OOFix2\" \"label\" \"[Label2a Label2b]\") (\"damp.ekeko.aspectj.annotationtests.OOFix3\" \"type\" \"[Aspect3a Aspect3b]\")}"))

(deftest test-annotation-requiresPrevious
  (test/tuples-correspond
    (damp.ekeko/ekeko [?beh ?val] (annotations/reqPrev|behavior-val ?beh ?val))
    "#{(\"void damp.ekeko.aspectj.annotationtests.REPFix2.methoda()\" \"[Label2Rc Label2Rd]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix1.<init>()\" \"[Label1Ra]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix2.ajc$before$damp_ekeko_aspectj_annotationtests_REPFix2$1$8598ac45()\" \"[Label2Re]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix2.<init>()\" \"[Label2Ra Label2Rb]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix1.methoda()\" \"[Label1Rb]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix2.ajc$around$damp_ekeko_aspectj_annotationtests_REPFix2$3$8598ac45(org.aspectj.runtime.internal.AroundClosure)\" \"[Label2Rf Label2Rg]\")}"))

(deftest test-annotation-excludesPrevious
  (test/tuples-correspond
    (damp.ekeko/ekeko [?beh ?val] (annotations/exclPrev|behavior-val ?beh ?val))
    "#{(\"void damp.ekeko.aspectj.annotationtests.REPFix2.ajc$after$damp_ekeko_aspectj_annotationtests_REPFix2$2$8598ac45()\" \"[Label2Ee]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix2.ajc$around$damp_ekeko_aspectj_annotationtests_REPFix2$3$8598ac45(org.aspectj.runtime.internal.AroundClosure)\" \"[Label2Ef Label2Eg]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix2.<init>()\" \"[Label2Ea Label2Eb]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix2.methodb()\" \"[Label2Ec Label2Ed]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix1.methodb()\" \"[Label1Eb]\") (\"void damp.ekeko.aspectj.annotationtests.REPFix1.<init>(int)\" \"[Label1Ea]\")}"))

(deftest test-logic-requires
  (test/tuples-correspond
    (damp.ekeko/ekeko [?rqd ?rqs]

    (ekeko [?aspect ?advice|entry ?advice|exit ?field] (assumptions/wormhole|naive-entry-exit-field ?aspect ?advice|entry ?advice|exit ?field))
    "#{(\"cl.pleiad.ajlmp.testWormhole.WrongOrderWormholeAspect\" \"(before: (execution(* cl.pleiad.ajlmp.testWormhole.BaseClass.*2()) && persingleton(cl.pleiad.ajlmp.testWormhole.WrongOrderWormholeAspect))->void cl.pleiad.ajlmp.testWormhole.WrongOrderWormholeAspect.ajc$before$cl_pleiad_ajlmp_testWormhole_WrongOrderWormholeAspect$1$b325ee9f())\" \"(before: ((execution(* cl.pleiad.ajlmp.testWormhole.BaseClass.*1(int)) && args(BindingTypePattern(int, 0))) && persingleton(cl.pleiad.ajlmp.testWormhole.WrongOrderWormholeAspect))->void cl.pleiad.ajlmp.testWormhole.WrongOrderWormholeAspect.ajc$before$cl_pleiad_ajlmp_testWormhole_WrongOrderWormholeAspect$2$72a7b216(int))\" \"int cl.pleiad.ajlmp.testWormhole.WrongOrderWormholeAspect.store\") (\"cl.pleiad.ajlmp.testWormhole.WormholeAspect\" \"(before: ((execution(* cl.pleiad.ajlmp.testWormhole.BaseClass.*1(int)) && args(BindingTypePattern(int, 0))) && persingleton(cl.pleiad.ajlmp.testWormhole.WormholeAspect))->void cl.pleiad.ajlmp.testWormhole.WormholeAspect.ajc$before$cl_pleiad_ajlmp_testWormhole_WormholeAspect$1$9821f264(int))\" \"(before: (execution(* cl.pleiad.ajlmp.testWormhole.BaseClass.*2()) && persingleton(cl.pleiad.ajlmp.testWormhole.WormholeAspect))->void cl.pleiad.ajlmp.testWormhole.WormholeAspect.ajc$before$cl_pleiad_ajlmp_testWormhole_WormholeAspect$2$b325ee9f())\" \"int cl.pleiad.ajlmp.testWormhole.WormholeAspect.store\") (\"cl.pleiad.ajlmp.testWormhole.TSWormholeAspect\" \"(before: ((execution(* cl.pleiad.ajlmp.testWormhole.BaseClass.*1(int)) && args(BindingTypePattern(int, 0))) && percflow(cl.pleiad.ajlmp.testWormhole.TSWormholeAspect on execution(* cl.pleiad.ajlmp.testWormhole.BaseClass.run())))->void cl.pleiad.ajlmp.testWormhole.TSWormholeAspect.ajc$before$cl_pleiad_ajlmp_testWormhole_TSWormholeAspect$1$9821f264(int))\" \"(before: (execution(* cl.pleiad.ajlmp.testWormhole.BaseClass.*2()) && percflow(cl.pleiad.ajlmp.testWormhole.TSWormholeAspect on execution(* cl.pleiad.ajlmp.testWormhole.BaseClass.run())))->void cl.pleiad.ajlmp.testWormhole.TSWormholeAspect.ajc$before$cl_pleiad_ajlmp_testWormhole_TSWormholeAspect$2$b325ee9f())\" \"int cl.pleiad.ajlmp.testWormhole.TSWormholeAspect.store\")}"))

;HERE
(deftest test-annotation-label-types
  (test/tuples-correspond
    (damp.ekeko/ekeko [?type ?val]
      (l/all
        (world/type-packageName ?type "damp.ekeko.aspectj.annotationtests")
        (annotations/labeled|type-label|val ?type ?val)))
"#{(\"damp.ekeko.aspectj.annotationtests.LaFix2\" \"[\\\"Label2a\\\" \\\"Label2b\\\"]\") (\"damp.ekeko.aspectj.annotationtests.LaFix1\" \"[\\\"Label1\\\"]\")}"))

(deftest test-annotation-label-behavior
  (test/tuples-correspond
