Add center function, add multiply protocol