ring now makes it through interface compilation