turned off RedundantModifier check because putting public on interface methods is actually a *good* idea