Just curious -- why are you using a string here, instead of code generation? (I can live with either approach; was simply curious about choices.)