Self Implementation of DS