@@ -0,0 +1,1670 @@
+package io.disassemble.asm.util;%0A%0Aimport org.objectweb.asm.Opcodes;%0A%0Apublic class Modifiers %7B%0A    public static int remove(int modifier, int flag) %7B%0A        return modifier & ~flag;%0A    %7D%0A%0A    public static int add(int modifier, int flag) %7B%0A        return modifier %7C flag;%0A    %7D%0A%0A    public static boolean marked(int modifier, int flag) %7B%0A        return (modifier & flag) == flag;%0A    %7D%0A%0A    public static int markPublic(int current_modifier) %7B%0A        current_modifier = add(current_modifier, Opcodes.ACC_PUBLIC);%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PROTECTED);%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PRIVATE);%0A        return current_modifier;%0A    %7D%0A%0A    public static int markProtected(int current_modifier) %7B%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PUBLIC);%0A        current_modifier = add(current_modifier, Opcodes.ACC_PROTECTED);%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PRIVATE);%0A        return current_modifier;%0A    %7D%0A%0A    public static int markPrivate(int current_modifier) %7B%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PUBLIC);%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PROTECTED);%0A        current_modifier = add(current_modifier, Opcodes.ACC_PRIVATE);%0A        return current_modifier;%0A    %7D%0A%0A    public static int markPackageLocal(int current_modifier) %7B%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PUBLIC);%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PROTECTED);%0A        current_modifier = remove(current_modifier, Opcodes.ACC_PRIVATE);%0A        return current_modifier;%0A    %7D%0A%7D%0A

Add Modifiers class to simplify moving classes between packages