Currency Swap and CTD

Hi Could some one please help me understand the cheapest to deliver (CTD) bond , I am finding it hard to see the intuition. Also I was reading Hull - Chapter 7 Swaps in the currency swaps section Valuation of currency swaps in terms of bond prices I somehow find that there is some problem with the formula Vswap= Bd - So Bf where as Bd is value measured in domestic currency defined by domestic cashflows Bf = value measured in foreign currency defined by foreign cashflows So = Spot exchange rate (expressed as number of dollars per unit of foreign currency ) but as per a illustration given by Hull the formula states as Vswap = Bd - Bf / So bc to get the value of the swap the foreign currency has to be converted in terms of USD . Am I missing something here ?

CTD bond definition: this is the bond with the lowest cost for the short position to deliver to you if you are long a treasury future. How do you determine which bond will be delivered? The CTD will minimize the difference between the quoted bond price and the settlement price * Conversion Factor. SWAPS: Whichever swaps you are valuing, don’t forget one thing: Value of a swap= revenue - cost For instance an interest swaps (IRS), you pay fixed rate and you receive floating. You calculate the bond value for fixed rate (COST) - and the bond value for floating (REVENUE) and you will take the difference. A currency swaps valuation is the same thing as an IRS valuation except instead of having the interest rate in the same currency, they are in different currency. So you calculate the bond value in each currency based on their respective currency interest rate. Then depending on which currency the answers are, you will convert the bond value of the other currency in the currency GARP ask you to reply. Don’t forget if you are swapping USD vs EUR: receive EUR and pay USD, then your revenue are in EUR and costs in USD.