Update many things
Finish custom design function