customizable completion