corrected special_bc; dont remember the rest