penalties reimplemented