removed loads more redundant code