code: void startScanSFeaturesAt(List seq, int pos) {	
  	sFeatures.clear();
  	sFeatureIdx = 0;
  	
  	Observation obsr = (Observation)seq.get(pos);
  	    
  	// scan over all context predicates
  	for (int i = 0; i < obsr.cps.length; i++) {
  	    Element elem = (Element)dict.dict.get(new Integer(obsr.cps[i]));
  	    if (elem == null) {
  		continue;
  	    }
  	    
  	    if (!(elem.isScanned)) {
  		// scan all labels for state feature
  		Iterator it = elem.lbCntFidxes.keySet().iterator();
  		while (it.hasNext()) {
  		    Integer label = (Integer)it.next();
  		    CountFeatureIdx cntFidx = (CountFeatureIdx)elem.lbCntFidxes.get(label);
  
  		    if (cntFidx.fidx >= 0) {
  			Feature sF = new Feature();
  			sF.sFeature1Init(label.intValue(), obsr.cps[i]);
  			sF.idx = cntFidx.fidx;
  			
  			elem.cpFeatures.add(sF);
  		    }	    
  		}		
  		
  		elem.isScanned = true;
  	    }
  	    
  	    for (int j = 0; j < elem.cpFeatures.size(); j++) {
  		sFeatures.add(elem.cpFeatures.get(j));
  	    }
  	}		
      }
docs: Start scan s features at.
  
  @param seq the seq
  @param pos the pos