UPDATE: Simplified several methods