@@ -0,0 +1,859 @@
+from mythril.laser.ethereum.svm import LaserEVM%0Afrom mythril.laser.ethereum.plugins.plugin import LaserPlugin%0Afrom mythril.laser.ethereum.state.global_state import GlobalState%0A%0A%0Aclass InstructionCoveragePlugin(LaserPlugin):%0A    %22%22%22InstructionCoveragePlugin%0A%0A    This plugin measures the instruction coverage of mythril.%0A    The instruction coverage is the ratio between the instructions that have been executed%0A    and the total amount of instructions.%0A%0A    Note that with lazy constraint solving enabled that this metric will be %22unsound%22 as%0A    reachability will not be considered for the calculation of instruction coverage.%0A%0A    %22%22%22%0A%0A    def initialize(self, symbolic_vm: LaserEVM):%0A        %22%22%22Initializes the instruction coverage plugin%0A%0A        Introduces hooks for each instruction%0A        :param symbolic_vm:%0A        :return:%0A        %22%22%22%0A        pass%0A

implement stub instruction coverage plugin