implement statics