Structure and Implementation details