added Design Principles