if (verifiers.containsKey(clz)) {
return (Verifier<T>) verifiers.get(clz);
}
if (ApplicationSpecification.class.isAssignableFrom(clz)) {
verifiers.put(clz, new ApplicationVerification());
} else if (StreamSpecification.class.isAssignableFrom(clz)) {
verifiers.put(clz, new StreamVerification());
} else if (FlowSpecification.class.isAssignableFrom(clz)) {
verifiers.put(clz, new FlowVerification());
} else if (ProgramSpecification.class.isAssignableFrom(clz)) {