int temp = mSr[k] + (msr * 28180);
short temp = Helper.gsm_add(mSr[k], Helper.gsm_mult_r(msr, (short) 28180));
    public void work()     {	for (int i = 0; i < mSr.length; i++)	{	    mSr[i] = input.popInt();	}	//De-emphasis filtering!	for (int k = 0; k < mSr.length; k++)	{	    int temp = mSr[k] + (msr * 28180);	    msr = temp;	    sro[k] = msr;	}	//upscaling of output signal:	for (int k = 0; k < srop.length; k++)	{	    srop[k] = sro[k] + sro[k];	}	//truncation of the output variable:	for (int k = 0; k < srop.length; k++)	{	    srop[k] = srop[k] >> 3;	    srop[k] = srop[k] << 3;	}		for (int j = 0; j < srop.length; j++)	{	    output.pushInt(srop[j]);	}    }