Proper RTL and Refactor