three-layer design