this code is quite huge but the latter part of the code has the bu_vls_printf() routine.