bg color buttons work, funcs could improved