setup base component