You are a bot, a language model 
            trained by OpenAI. Your purpose is to act as a highly experienced 
            software engineer and provide a thorough review of the code hunks
            and suggest code snippets to improve key areas such as:
            - Logic
            - Security
            - Performance
            - Data races
            - Consistency
            - Error handling
            - Maintainability
            - Modularity
            - Complexity
            - Optimization
            - Best practices: DRY, SOLID, KISS

            Do not comment on minor code style issues, missing 
            comments/documentation. Identify and resolve significant 
            concerns to improve overall code quality while deliberately 
            disregarding minor issues.

user message:
        reviewFileDiff = `## GitHub PR Title

        \`fix ECEECOM-10126 - change billing address to billing details\` 

        ## Description

        \`\`\`
        **Checklist**

> NOTE: Please complete every item before opening your pull request

- [x] First commit title adheres to [contribution rules](https://git.autodesk.com/dpe/mfe-checkout-payments/blob/master/CONTRIBUTING.md)
- [x] Before opening the pull request, you have read the [Code Review Guidelines](https://wiki.autodesk.com/pages/viewpage.action?spaceKey=EFDE&title=Code+review+guidelines) document
- [x] Branch builds correctly
- ~[ ] Write unit tests (strikethrough if not applicable)~
- ~[ ] Write integration tests (strikethrough if not applicable)~
- ~[ ] Write end-to-end tests (strikethrough if not applicable)~
- ~[ ] Run Cypress regression tests (strikethrough if not applicable)~

**Summary**

https://jira.autodesk.com/browse/ECEECOM-10126

- What are your changes?

**Screenshots**
![Screenshot 2023-10-05 at 1 27 01 PM](https://media.git.autodesk.com/user/25271/files/b17df921-0d2e-4878-b46e-644de93e4e03)

- Are there any UI screenshots tied to your changes?

        \`\`\`

        ## Summary of changes

        \`\`\`
        $short_summary
        \`\`\`

        ## IMPORTANT Instructions

        Input: New hunks annotated with line numbers and old hunks (replaced code). Hunks represent incomplete code fragments.
        Additional Context: PR title, description, summaries and comment chains.
        Task: Review new hunks for substantive issues using provided context and respond with comments if necessary.
        Output: Review comments in markdown with exact line number ranges in new hunks. Start and end line numbers must be within the same hunk. For single-line comments, start=end line number. Must use example response format below.
        Use fenced code blocks using the relevant language identifier where applicable.
        Don't annotate code snippets with line numbers. Format and indent code correctly.
        Do not use \`suggestion\` code blocks.
        For fixes, use \`diff\` code blocks, marking changes with \`+\` or \`-\`. The line number range for comments with fix snippets must exactly match the range to replace in the new hunk.

        - Do NOT provide general feedback, summaries, explanations of changes, or praises 
        for making good additions. 
        - Focus solely on offering specific, objective insights based on the 
        given context and refrain from making broad comments about potential impacts on 
        the system or question intentions behind the changes.

        If there are no issues found on a line range, you MUST respond with the 
        text \`LGTM!\` for that line range in the review section. 

        ## Example

        ### Example changes

        ---new_hunk---
        \`\`\`
        z = x / y
            return z

        20: def add(x, y):
        21:     z = x + y
        22:     retrn z
        23: 
        24: def multiply(x, y):
        25:     return x * y

        def subtract(x, y):
        z = x - y
        \`\`\`
        
        ---old_hunk---
        \`\`\`
        z = x / y
            return z

        def add(x, y):
            return x + y

        def subtract(x, y):
            z = x - y
        \`\`\`

        ---comment_chains---
        \`\`\`
        Please review this change.
        \`\`\`

        ---end_change_section---

        ### Example response

        22-22:
        There's a syntax error in the add function.
        \`\`\`diff
        -    retrn z
        +    return z
        \`\`\`
        ---
        24-25:
        LGTM!
        ---

        ## Changes made to \`src/state/payments/selectors.js\` for your review

        

                 paymentSelectors.getPaymentCenterOptions
     );
 
78:     const isPCOrSubsDetail = useSelector(paymentSelectors.isPCOrSubsDetail);
79: 
     const paymentMethodSupportedCountries = useSelector(
         paymentSelectors.getPaymentMethodSupportedCountries
     );

                 paymentSelectors.getPaymentCenterOptions
     );
 
     const paymentMethodSupportedCountries = useSelector(
         paymentSelectors.getPaymentMethodSupportedCountries
     );
        
---end_change_section---

         
             <header className="dhig-pt-4">
                 <Typography variant="headline-smaller">
333:                     {isPCOrSubsDetail
334:                         ? dictionaryContent.billingDetails
335:                         : dictionaryContent.billingAddress}
                 </Typography>
             </header>
 

         
             <header className="dhig-pt-4">
                 <Typography variant="headline-smaller">
                    {dictionaryContent.billingAddress}
                 </Typography>
             </header>
 
        
---end_change_section---

             (paymentCenterOptions) => paymentCenterOptions
 );
 
282: const isPCOrSubsDetail = createSelector(
283:     (state) => !!state.payments.paymentCenterOptions,
284:     (isPCOrSubsDetail) => isPCOrSubsDetail
285: );
286: 
 const getIsSaveTriggered = createSelector(
     (state) => state.payments.isSaveTriggered,
     (isSaveTriggered) => isSaveTriggered

             (paymentCenterOptions) => paymentCenterOptions
 );
 
 const getIsSaveTriggered = createSelector(
     (state) => state.payments.isSaveTriggered,
     (isSaveTriggered) => isSaveTriggered
        
---end_change_section---

             getPaymentCenterOptions,
     getIsSaveTriggered,
     getIsEditAddressTriggered,
354:     getSelectedPaymentProfileById,
355:     isPCOrSubsDetail
 };

             getPaymentCenterOptions,
     getIsSaveTriggered,
     getIsEditAddressTriggered,
    getSelectedPaymentProfileById
 };
        
---end_change_section---



########### response from Auzu Open AI gpt 4.0#####
LLM response: 78-79:
LGTM!
---

333-335:
The conditional rendering logic has been removed, and it now always displays `billingAddress`. If the intent was to always show "Billing Details" as per the PR title, this needs to be corrected.
```diff
-                    {isPCOrSubsDetail
-                        ? dictionaryContent.billingDetails
-                        : dictionaryContent.billingAddress}
+                    {dictionaryContent.billingDetails}
```
---

second time
333-335:
The conditional rendering logic has been removed, and it now always displays `billingAddress`. If the intent was to change the text conditionally based on `isPCOrSubsDetail`, this change may introduce a bug. Please ensure that the correct text is displayed for both conditions.
```diff
-                        ? dictionaryContent.billingDetails
-                        : dictionaryContent.billingAddress}
+                        dictionaryContent.billingAddress}
```

(As per instruction example to LLM, remove all lines with - and, add + lines)

#########################

---with personal openai key----
message to LLM

        ## Changes made to \`src/components/sections/payments-section/shared/billing-form/address-form/index.jsx\` for your review

        

                 paymentSelectors.getPaymentCenterOptions
     );
 
78:     const isPCOrSubsDetail = useSelector(paymentSelectors.isPCOrSubsDetail);
79: 
     const paymentMethodSupportedCountries = useSelector(
         paymentSelectors.getPaymentMethodSupportedCountries
     );

                 paymentSelectors.getPaymentCenterOptions
     );
 
     const paymentMethodSupportedCountries = useSelector(
         paymentSelectors.getPaymentMethodSupportedCountries
     );
        
---end_change_section---

         
             <header className="dhig-pt-4">
                 <Typography variant="headline-smaller">
333:                     {isPCOrSubsDetail
334:                         ? dictionaryContent.billingDetails
335:                         : dictionaryContent.billingAddress}
                 </Typography>
             </header>
 

         
             <header className="dhig-pt-4">
                 <Typography variant="headline-smaller">
                    {dictionaryContent.billingAddress}
                 </Typography>
             </header>
 
        
---end_change_section---