code: public static Pattern chemicalAffectsProteinThroughControl()
  	{
  		Pattern p = new Pattern(SmallMoleculeReference.class, "controller SMR");
  		p.add(erToPE(), "controller SMR", "controller simple PE");
  		p.add(notGeneric(), "controller simple PE");
  		p.add(linkToComplex(), "controller simple PE", "controller PE");
  		p.add(peToControl(), "controller PE", "Control");
  		p.add(controlToInter(), "Control", "Interaction");
  		p.add(new NOT(participantER()), "Interaction", "controller SMR");
  		p.add(participant(), "Interaction", "affected PE");
  		p.add(linkToSpecific(), "affected PE", "affected simple PE");
  		p.add(new Type(SequenceEntity.class), "affected simple PE");
  		p.add(peToER(), "affected simple PE", "affected generic ER");
  		p.add(linkedER(false), "affected generic ER", "affected ER");
  		return p;
  	}
docs: A small molecule controls an interaction of which the protein is a participant.
  @return pattern