public static string F_Number(string amt, string amt_paisa)
        {
            string str1 = "";
            string str2 = "";

            if (amt_paisa == "")
            {
                if (amt.Substring(0, 2) != "00")
                {
                    int int32 = Convert.ToInt32(amt.Substring(0, 2));
                    str1 = Convert.ToInt32(amt.Substring(0, 1)) == 0 ? NumericWordConversion.Tens(int32.ToString()) : NumericWordConversion.Word_Spell_Tens(int32.ToString());
                }
                else
                {
                    str1 = " Zero ";
                }
            }
            else if (amt_paisa != "")
            {
                if (amt.Substring(0, 2) != "00")
                {
                    int int32 = Convert.ToInt32(amt.Substring(0, 2));
                    str1 = !(amt.Substring(0, 1) != "0") ? NumericWordConversion.Tens(int32.ToString()) : NumericWordConversion.Word_Spell_Tens(int32.ToString());
                }
                else
                {
                    str1 = " Zero ";
                }
                if (amt_paisa.Substring(0, 2) != "00")
                {
                    str2 = !(amt_paisa.Substring(0, 1) != "0") ? " " + NumericWordConversion.Tens(amt_paisa.Substring(0, 2)) + " Paisa" : " and " + NumericWordConversion.Word_Spell_Tens(amt_paisa.Substring(0, 2)) + " Paisa";
                }
            }
            return("Taka " + str1 + str2 + " Only");
        }
        public string InWords(Decimal amount)
        {
            string str       = "";
            string amt       = amount.ToString();
            int    num       = amount.ToString().IndexOf(".", 0);
            string amt_paisa = amount.ToString().Substring(num + 1);

            if (amt == amt_paisa)
            {
                amt_paisa = "";
            }
            else
            {
                amt = amount.ToString().Substring(0, amount.ToString().IndexOf(".", 0)).Replace(",", "").ToString();
            }
            switch (amt.Length)
            {
            case 1:
                str = NumericWordConversion.F_Number("0" + amt, amt_paisa);
                break;

            case 2:
                str = NumericWordConversion.F_Number(amt, amt_paisa);
                break;

            case 3:
                str = NumericWordConversion.F_Hundred(amt, amt_paisa);
                break;

            case 4:
                str = NumericWordConversion.F_Thousand(amt, amt_paisa);
                break;

            case 5:
                str = NumericWordConversion.F_Thousands(amt, amt_paisa);
                break;

            case 6:
                str = NumericWordConversion.F_Lakh(amt, amt_paisa);
                break;

            case 7:
                str = NumericWordConversion.F_Lakhs(amt, amt_paisa);
                break;

            case 8:
                str = NumericWordConversion.F_Crore(amt, amt_paisa);
                break;

            case 9:
                str = NumericWordConversion.F_Crores(amt, amt_paisa);
                break;
            }
            return(str);
        }
        public static string F_Thousand(string amt, string amt_paisa)
        {
            string str1 = "";
            string str2 = "";
            string str3 = "";
            string str4 = "";

            if (amt_paisa == "")
            {
                if (amt.Substring(0, 1) != "0")
                {
                    int int32 = Convert.ToInt32(amt.Substring(0, 1));
                    str1 = int32 <= 1 ? NumericWordConversion.Tens(int32.ToString()) + " Thousand" : NumericWordConversion.Tens(int32.ToString()) + " Thousands";
                }
                if (amt.Substring(1, 3) != "000")
                {
                    if (amt.Substring(1, 1) != "0")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(1, 1));
                        str2 = int32 <= 1 ? (!(amt.Substring(2, 2) == "00") ? " " + NumericWordConversion.Tens(int32.ToString()) + " Hundred" : " and" + NumericWordConversion.Tens(int32.ToString()) + " Hundred") : (!(amt.Substring(2, 2) == "00") ? " " + NumericWordConversion.Tens(int32.ToString()) + " Hundreds" : " and" + NumericWordConversion.Tens(int32.ToString()) + " Hundreds");
                    }
                    if (amt.Substring(2, 2) != "00")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(2, 2));
                        str3 = Convert.ToInt32(amt.Substring(2, 1)) == 0 ? " and " + NumericWordConversion.Tens(int32.ToString()) : " and " + NumericWordConversion.Word_Spell_Tens(int32.ToString());
                    }
                }
            }
            else if (amt_paisa != "")
            {
                if (amt.Substring(0, 1) != "0")
                {
                    int int32 = Convert.ToInt32(amt.Substring(0, 1));
                    str1 = int32 <= 1 ? NumericWordConversion.Tens(int32.ToString()) + " Thousand" : NumericWordConversion.Tens(int32.ToString()) + " Thousands";
                }
                if (amt.Substring(1, 3) != "000")
                {
                    if (amt.Substring(1, 1) != "0")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(1, 1));
                        str2 = int32 <= 1 ? " " + NumericWordConversion.Tens(int32.ToString()) + " Hundred" : " " + NumericWordConversion.Tens(int32.ToString()) + " Hundreds";
                    }
                    if (amt.Substring(2, 2) != "00")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(2, 2));
                        str3 = !(amt.Substring(2, 1) != "0") ? " " + NumericWordConversion.Tens(int32.ToString()) : " " + NumericWordConversion.Word_Spell_Tens(int32.ToString());
                    }
                }
                if (amt_paisa.Substring(0, 2) != "00")
                {
                    str4 = !(amt_paisa.Substring(0, 1) != "0") ? " " + NumericWordConversion.Tens(amt_paisa.Substring(0, 2)) + " Paisa" : " and " + NumericWordConversion.Word_Spell_Tens(amt_paisa.Substring(0, 2)) + " Paisa";
                }
            }
            return("Taka " + str1 + str2 + str3 + str4 + " Only");
        }
        public static string F_Lakhs(string amt, string amt_paisa)
        {
            string str1 = "";
            string str2 = "";
            string str3 = "";
            string str4 = "";
            string str5 = "";

            if (amt_paisa == "")
            {
                if (amt.Substring(0, 2) != "00" && amt.Substring(0, 1) != "0")
                {
                    str1 = NumericWordConversion.Word_Spell_Tens(Convert.ToInt32(amt.Substring(0, 2)).ToString()) + " Lakhs";
                }
                if (amt.Substring(2, 2) != "00")
                {
                    if (amt.Substring(2, 1) != "0")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(2, 2));
                        str2 = !(amt.Substring(4, 3) == "000") ? " " + NumericWordConversion.Word_Spell_Tens(int32.ToString()) + " Thousands" : " and " + NumericWordConversion.Word_Spell_Tens(int32.ToString()) + " Thousands";
                    }
                    else
                    {
                        int    int32 = Convert.ToInt32(amt.Substring(3, 1));
                        string str6  = !(amt.Substring(4, 3) == "000") ? " " + NumericWordConversion.Tens(int32.ToString()) : " and " + NumericWordConversion.Tens(int32.ToString());
                        str2 = int32 <= 1 ? str6 + " Thousand" : str6 + " Thousands";
                    }
                }
                if (amt.Substring(4, 3) != "000")
                {
                    if (amt.Substring(4, 1) != "0")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(4, 1));
                        str3 = int32 <= 1 ? (!(amt.Substring(5, 2) == "00") ? " " + NumericWordConversion.Tens(int32.ToString()) + " Hundred" : " and" + NumericWordConversion.Tens(int32.ToString()) + " Hundred") : (!(amt.Substring(5, 2) == "00") ? " " + NumericWordConversion.Tens(int32.ToString()) + " Hundreds" : " and" + NumericWordConversion.Tens(int32.ToString()) + " Hundreds");
                    }
                    if (amt.Substring(5, 2) != "00")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(5, 2));
                        str4 = Convert.ToInt32(amt.Substring(5, 1)) == 0 ? " and " + NumericWordConversion.Tens(int32.ToString()) : " and " + NumericWordConversion.Word_Spell_Tens(int32.ToString());
                    }
                }
            }
            else if (amt_paisa != "")
            {
                if (amt.Substring(0, 2) != "00" && amt.Substring(0, 1) != "0")
                {
                    str1 = " " + NumericWordConversion.Word_Spell_Tens(Convert.ToInt32(amt.Substring(0, 2)).ToString()) + " Lakhs";
                }
                if (amt.Substring(2, 2) != "00")
                {
                    if (amt.Substring(2, 1) != "0")
                    {
                        str2 = " " + NumericWordConversion.Word_Spell_Tens(Convert.ToInt32(amt.Substring(2, 2)).ToString()) + " Thousands";
                    }
                    else
                    {
                        int int32 = Convert.ToInt32(amt.Substring(3, 1));
                        str2 = int32 <= 1 ? " " + NumericWordConversion.Tens(int32.ToString()) + " Thousand" : " " + NumericWordConversion.Tens(int32.ToString()) + " Thousands";
                    }
                }
                if (amt.Substring(4, 3) != "000")
                {
                    if (amt.Substring(4, 1) != "0")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(4, 1));
                        str3 = int32 <= 1 ? " " + NumericWordConversion.Tens(int32.ToString()) + " Hundred" : " " + NumericWordConversion.Tens(int32.ToString()) + " Hundreds";
                    }
                    if (amt.Substring(5, 2) != "00")
                    {
                        int int32 = Convert.ToInt32(amt.Substring(5, 2));
                        str4 = !(amt.Substring(5, 1) != "0") ? " " + NumericWordConversion.Tens(int32.ToString()) : " " + NumericWordConversion.Word_Spell_Tens(int32.ToString());
                    }
                }
                if (amt_paisa.Substring(0, 2) != "00")
                {
                    str5 = !(amt_paisa.Substring(0, 1) != "0") ? " " + NumericWordConversion.Tens(amt_paisa.Substring(0, 2)) + " Paisa" : " and " + NumericWordConversion.Word_Spell_Tens(amt_paisa.Substring(0, 2)) + " Paisa";
                }
            }
            return("Taka " + str1 + str2 + str3 + str4 + str5 + " Only");
        }
        public static string Word_Spell_Tens(string amt)
        {
            int int32 = Convert.ToInt32(amt.Substring(0, 2));

            return(int32 <= 20 ? NumericWordConversion.Tens(int32.ToString()) : NumericWordConversion.Tens(amt.Substring(0, 1) + "0") + " " + NumericWordConversion.Tens(amt.Substring(1, 1)));
        }