[System.Serializable] 
 | 
public class ConfusionSetting 
 | 
{ 
 | 
    public ConfusionDirectoryInfo[] confusionDirectorys; 
 | 
  
 | 
    private int BitPrivate = 1; 
 | 
    private int BitProtected = 2; 
 | 
    private int BitPublic = 4; 
 | 
  
 | 
    public int confuseField = 1; 
 | 
    public int confuseMethod = 1; 
 | 
  
 | 
    public ConfusionSetting() 
 | 
    { 
 | 
  
 | 
    } 
 | 
  
 | 
    public bool IsConfusePrivateField 
 | 
    { 
 | 
        get { return (confuseField & BitPrivate) == 1; } 
 | 
        set 
 | 
        { 
 | 
            confuseField = value ? confuseField | BitPrivate : confuseField & ~BitPrivate; 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public bool IsConfuseProtectedField 
 | 
    { 
 | 
        get { return ((confuseField & BitProtected) >> 1) == 1; } 
 | 
        set 
 | 
        { 
 | 
            confuseField = value ? confuseField | BitProtected : confuseField & ~BitProtected; 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public bool IsConfusePublicField 
 | 
    { 
 | 
        get { return ((confuseField & BitPublic) >> 2) == 1; } 
 | 
        set 
 | 
        { 
 | 
            confuseField = value ? confuseField | BitPublic : confuseField & ~BitPublic; 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public bool IsConfusePrivateMethod 
 | 
    { 
 | 
        get { return (confuseMethod & BitPrivate) == 1; } 
 | 
        set 
 | 
        { 
 | 
            confuseMethod = value ? confuseMethod | BitPrivate : confuseMethod & ~BitPrivate; 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public bool IsConfuseProtectedMethod 
 | 
    { 
 | 
        get { return ((confuseMethod & BitProtected) >> 1) == 1; } 
 | 
        set 
 | 
        { 
 | 
            confuseMethod = value ? confuseMethod | BitProtected : confuseMethod & ~BitProtected; 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public bool IsConfusePublicMethod 
 | 
    { 
 | 
        get { return ((confuseMethod & BitPublic) >> 2) == 1; } 
 | 
        set 
 | 
        { 
 | 
            confuseMethod = value ? confuseMethod | BitPublic : confuseMethod & ~BitPublic; 
 | 
        } 
 | 
    } 
 | 
} 
 |