rewrite getter in interfaces; close #14