Add aware interface and trait