less memory, more redundant