Inner class can be static to reduce memory usage