Implement static factory and new interfaces