add elegant support