server side completed