async def _seed2did(self) -> str:
rv = None<EOL>dids_with_meta = json.loads(await did.list_my_dids_with_meta(self.handle))  <EOL>if dids_with_meta:<EOL><INDENT>for did_with_meta in dids_with_meta:  <EOL><INDENT>if '<STR_LIT>' in did_with_meta:<EOL><INDENT>try:<EOL><INDENT>meta = json.loads(did_with_meta['<STR_LIT>'])<EOL>if isinstance(meta, dict) and meta.get('<STR_LIT>', None) == self._seed:<EOL><INDENT>rv = did_with_meta.get('<STR_LIT>')<EOL><DEDENT><DEDENT>except json.decoder.JSONDecodeError:<EOL><INDENT>continue  <EOL><DEDENT><DEDENT><DEDENT><DEDENT>if not rv:  <EOL><INDENT>temp_wallet = await Wallet(<EOL>self._seed,<EOL>'<STR_LIT>'.format(self.name),<EOL>None,<EOL>{'<STR_LIT>': True}).create()<EOL>rv = temp_wallet.did<EOL>await temp_wallet.remove()<EOL><DEDENT>return rv<EOL>
Derive DID, as per indy-sdk, from seed.

:return: DID