made protocol of type shell or freemarker, based on this we weave or not