Refactored get, get! and set