Refactor match result interface