1. Only minimal code can be used from previous projects
2. No precoding is allowed
3. All ideas must be new.