@magic.line_magic
    @magic_arguments()
    @argument('address', type=hexint_aligned, nargs='?')
    @argument('wordcount', type=hexint, nargs='?', default=1, help='Number of words to remap')
    @argument('-d', '--delay', type=float, default=0.05, metavar='SEC', help='Add a delay between rounds')
    @argument('-p', '--period', type=int, default=8, metavar='N', help='Number of rounds per cycle repeat')
    def bitfuzz(self, line):
        """Scan a small number of words in binary while writing 00000000/ffffffff patterns.
        This can help determine the implementation of bits in an MMIO register.
        """
        args = parse_argstring(self.bitfuzz, line)
        d = self.shell.user_ns['d']
        try:
            for line in bitfuzz_rounds(d, args.address, args.wordcount, args.period, args.delay):
                print line
        except __HOLE__:
            return
dataset/ETHPy150Open scanlime/coastermelt/backdoor/shell_magics.py/ShellMagics.bitfuzz