self code