Efficient Generation Of Random Variables From Biased Coins