#34, maintain the extra space