Overhaul and added methods