<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def samaccountname(self, base_dn, distinguished_name):
 """Retrieve the sAMAccountName for a specific DistinguishedName :param str base_dn: The base DN to search within :param list distinguished_name: The base DN to search within :param list attributes: Object attributes to populate, defaults to all :return: A populated ADUser object :rtype: ADUser """

        mappings = self.samaccountnames(base_dn, [distinguished_name])

        try:
            # Usually we will find a match, but perhaps not always
            return mappings[distinguished_name]
        except KeyError:
            logging.info("%s - unable to retrieve object from AD by DistinguishedName",
                         distinguished_name)