Improved naming and structure