complete component