changed edge cases