import java.lang.Math;

public class Entiexte
{
	private String repr;

	public Entiexte(int i)
	{
		this.repr = Integer.toBinaryString(i);
		this.repr = this.reverse(this.repr);
	}

	public Entiexte(String i)
	{
		int temp = Integer.parseInt(i);
		this.repr = Integer.toBinaryString(temp);
		this.repr = this.reverse(this.repr);
	}

	public String toString()
	{
		return this.repr;
	}

	private String reverse(String txt)
	{
		char temp;
		char[] txt2 = txt.toCharArray();
		for (int i = 0;i<txt.length()/2;i++) 
		{
			temp = txt2[txt.length()-(1+i)];
			txt2[txt.length()-(1+i)]=txt2[i];
			txt2[i]=temp;
		}
		txt = new String(txt2);
		return txt;
	}

	public int toInt()
	{
		int out=0;
		for (int i=0;i<this.repr.length();i++)
		{
			if(repr.charAt(i)=='1')
			{
				out+= Math.pow(2,i);
			}
		}
		return out;
	}

	public boolean plusGrand(Entiexte e)
	{
		int test = 0;
		if (this.repr.length()>e.repr.length()) 
		{
			return true;
		}
		else 
		{
			if (this.repr.length()<e.repr.length()) 
			{
				return false;
			}
			else
			{
				for (int i=this.repr.length()-1;i>=0;i--) 
				{
					if (this.repr.charAt(i)!=e.repr.charAt(i)) 
					{
						if (this.repr.charAt(i)=='1') 
						{
							return true;
						}
						else
						{
							return false;
						}
					}	
				}
			}
		}
		return false;
	}
}