package ${package}.om;

/**
 * The skeleton for this class was autogenerated by Torque on:
 *
 * [Tue Oct 25 15:50:38 CEST 2016]
 *
 * You should add additional methods to this class to meet the
 * application requirements.  This class will only be generated as
 * long as it does not already exist in the output directory.
 */
/**
 * Added Interface
 * @author gk
 *
 */
public class TurbineGroupPeerImpl
    extends ${package}.om.BaseTurbineGroupPeerImpl implements org.apache.fulcrum.security.torque.peer.TorqueTurbinePeer<TurbineGroup>
{
    /** Serial version */
    private static final long serialVersionUID = 1477403438057L;



}
