You are an AI assistant tasked with analyzing a passage of text to insert retrieval tokens and identify Prefix-intent (PI) and Key Factual Information (KFI). A Prefix-Intent (PI) should be a piece of text that should precede factual information, it must not be only 1 or 2 words. Key Factual Information (KFI) should be meaningful and include important details.

Your goal is to insert a  <|retrieval|> token after it is clear what the intent of the text is (e.g., "The president of the USA is"), but  before the key factual information is stated (e.g., "Joe Biden"). Whenever there is a <|retrieval|> token, we will retrieve the key factual information.

Here is the passage you will be working with:

<passage>
to -7 volts DC.” The standard does not require any particular circuit for providing the basis and termination; however, the simplest method is often a passive pull apart network. Whatever method is used must be tested with the chosen driver chip to see that the design combination still meets the requirement of E1.20. Tests are given in Appendix F of the standard. These tests are for design verification and are not required as production testing. Experience has shown many EIA485 drivers designed for 5 volt operation will pass the required tests. It is not so clear that all 3.3 volt parts will pass. In either case this performance must be verified. Details of the pull apart network and the tests can be found in ANSI E1.20 - 2006. Protocol RDM packets are interspersed with the existing DMX data packets being used to control the lighting. The DMX 512 specification requires that DMX packets begin with the start code. The default Start Code is 0x00(also known as the Null Start Code). By using the start code 0xCC, RDM packets can be safely inserted between DMX data packets without older non-RDM aware devices attempting to read them. The DMX 512 specification required DMX connectors to be a 5-pin XLR type, with only the first 3 pins being used (pins 4 and 5 were reserved for "future use"). Unfortunately, various manufacturers started using the final two pins for various, proprietary purposes, such as low-voltage power or proprietary talk-back protocols. As a result, the decision was made to have all RDM communication on pins 2 and 3. This raises data collision concerns. The RDM standard addresses this problem by ensuring that in all cases (except discovery) only one device is authorized to be transmitting at any given time (somewhat similar to the token passing approach). Only the controller (of which there can be only one) can start an RDM exchange. Responders can speak only if spoken to. The controller will always initiate all RDM communication. All RDM devices have a unique identifier (UID) that consists of a manufacturer ID and serial number. RDM communication can be broken down into three types: Discovery Unicast communication Broadcast communication Discovery Discovery is the only situation in which data collisions can occur assuming all connected devices behave correctly. The controller will broadcast a discovery command to all devices and await a response. If there are more than one device connected, the simultaneous responses will likely result in a data collision, and the controller will not receive a correctly formatted response. The controller will then refine its search to a smaller range of UIDs according to a binary search pattern. Once the controller receives a correct response it will attempt to mute the responding device. After a successful mute, the device is no longer allowed to respond to discovery messages, and the controller can continue searching for other devices. Once all devices have been muted (no responses are received to discovery commands), the discovery process is finished and the controller will hold a list of all connected devices. The controller will need to periodically perform searches for new devices and assert that already discovered devices are still connected. Unicast communication General communication with a specific fixture occurs in a request-response pattern. The controller sends the request to the device, addressing it by the device's UID. When the request has been sent, the controller relinquishes control of the DMX line for a given period of time, so the device can transmit its response. Unicast communication is the only way in which data can be retrieved from a fixture (other than
</passage>

Follow these steps to complete the task:

1. Inserting retrieval tokens:
   a. Read through the text carefully.
   b. Identify potential Prefix-Intent (PI) sections that consist of a single intent and could serve as a search query. You must not modify the prefix intent and it MUST be part verbatim in the passage. It cannot be single or only a few words.
   c. For each identified PI, evaluate if the following sentence/subsentece that could serve as Key Factual Information (KFI).
   d. Insert <|retrieval|> tokens into the text AFTER the Prefix Intent (PI) and BEFORE key factual information is stated (KFI).
   e. Key Factual information should not intersect with Prefix Intent.

2. Identifying Prefix-Intent (PI) and Key Factual Information (KFI):
   a. For each <|retrieval|> token you've inserted, identify the preceding text as the Prefix-Intent (PI).
   b. Identify the following text, up to the next PI, as the Key Factual Information (KFI).
   c. Ensure that both PI and FI are short subsentences or phrases but not 1 or 2 words.

3. Insert <|start-PI|>,<|end-PI|>, <|start-KFI|>, <|end-KFI|>.
   a. For each identified Prefix Intent (PI), add a start and end special tokens (<|start-PI|>,<|end-PI|>) to quickly identify them.
   b. Do the same for the Key Factual Information (KFI) (<|start-KFI|>, <|end-KFI|>)
   c. Ensure that the very first PI in the passage is preceded by <|start-PI|>.
   d. Double-check that every PI and KFI is properly enclosed in these tags.

4. Describing ideal retrieved information:
   a. Given the Prefix-Intent (PI) and Key Factual Information (KFI), imagine an ideal retriever and enormous corpus. 
   b. Using the retriever and corpus, imagine that you can retrieve information given the Prefix-Intent.  
   c. Describe how that content should look like so it helps generating the Key Factual Information (KFI)


5. Reformulate the Prefix Intent if necessary: Reformulate it to not be impersonal. This means that if the subject it is not identified (e.g. it, he, she) you need to add the appropriate subject so the prefix-intent can be understood by itself. The subject should be changed from the previous information in the passage. Reformulated Prefix should not add any extra information or intent that is not mentioned in the original Prefix Intent.


6. Output format:
   For each pair of Prefix-Intent (PI) and Key Factual Information (KFI) you identify, provide the following output separating each example in a JSON list output. Ensure that it is actually a JSON.

   - Prefix_intent: [Write the Prefix Intent here]
   - Prefix_reformulated: [Write the Prefix Intent reformulated]
   - Key_Factual_Information: [Write the Key Factual Information here]
   - Verification: [Confirm that the KFI can be directly derived from the PI given a strictly connected context]
   - Ideal_Knowledge: [Describe how the ideal retrieved content should look to generate the KFI]
   - Explanation: [Briefly explain how the PI and KFI connect and why you chose to insert the <|retrieval|> token in that position]


7. Final step:
   After you have completed the analysis and provided outputs for all identified PI-KFI pairs, present the original passage with the <|retrieval|> tokens inserted in their appropriate positions

Here's an example of the expected output format:

Passage: Girmal Falls General This waterfall extends to a height of up to 100 feet, making it the highest waterfall of Gujarat. The picturesque beauty of this site makes it popular among visitors and people of the region alike. The water swiftly falls from a great height, creating a fog like condition that’s eye catching. The government of this state is working on many projects to make this place an ideal picnic spot and a tourist attraction. The fall comes to its best form at the time of monsoon and provides an immensely striking appearance. Some of the best natural features of Gujarat can be explored in this place. This place is a nice and refreshing retreat for any traveler.

```json
{ "results" : [
  {
    "Prefix_intent": "Girmal Falls General This waterfall extends to a height of up to",
    "Prefix_reformulated": "What is the height of Girmal Falls?",
    "Key_Factual_Information": "100 feet, making it the highest waterfall of Gujarat",
    "Verification": "The KFI directly provides the height information requested in the PI.",
    "Ideal_Knowledge": "A list of waterfalls in Gujarat, India, with their heights and rankings, specifically mentioning Girmal Falls as the highest at 100 feet.",
    "Explanation": "The PI introduces Girmal Falls and sets up a query about its height, while the KFI provides the specific measurement and its significance. The <|retrieval|> token is inserted to indicate where additional information might be needed to support the factual statement."
  },
  {
    "Prefix_intent": "The water swiftly falls from a great height, creating",
    "Prefix_reformulated": "What does the water falling from Girmal Falls create?",
    "Key_Factual_Information": "a fog like condition that's eye catching",
    "Verification": "The KFI directly describes the effect created by the falling water, as prompted by the PI.",
    "Ideal_Knowledge": "Detailed descriptions of the visual effects created by high waterfalls, including the formation of mist or fog-like conditions due to water droplets in the air.",
    "Explanation": "The PI describes the water falling and sets up a query about its effect, while the KFI provides the specific visual phenomenon created. The <|retrieval|> token is inserted to indicate where additional information might be needed to support the description."
  },
  {
    "Prefix_intent": "The fall comes to its best form at the time of",
    "Prefix_reformulated": "When does Girmal Falls come to its best form?",
    "Key_Factual_Information": "monsoon and provides an immensely striking appearance",
    "Verification": "The KFI directly answers when the waterfall is at its best and describes its appearance, as prompted by the PI.",
    "Ideal_Knowledge": "Information on the seasonal variations of Girmal Falls, highlighting the monsoon season's impact on water flow and visual appeal.",
    "Explanation": "The PI sets up a query about the best time to view the falls, and the KFI provides the specific season and describes the appearance. The <|retrieval|> token is inserted to indicate where additional information about seasonal changes might be needed."
  }],
"Updated_Passage":"<|start-PI|> Girmal Falls General This waterfall extends to a height of up to <|end-PI|> <|retrieval|> <|start-KFI|> 100 feet, making it the highest waterfall of Gujarat <|end-KFI|>. The picturesque beauty of this site makes it popular among visitors and people of the region alike. <|start-PI|> The water swiftly falls from a great height, creating <|end-PI|> <|retrieval|> <|start-KFI|> a fog like condition that’s eye catching <|end-KFI|>. The government of this state is working on many projects to make this place an ideal picnic spot and a tourist attraction. <|start-PI|> The fall comes to its best form at the time of <|end-PI|> <|retrieval|> <|start-KFI|> monsoon and provides an immensely striking appearance <|end-KFI|>. Some of the best natural features of Gujarat can be explored in this place. This place is a nice and refreshing retreat for any traveler."
}

```
8. Final check:
  a. Review the Updated_Passage to ensure all PIs and KFIs are properly tagged.
  b. Verify that the first PI in the passage starts with <|start-PI|>.
  c. Make sure there are no missing or misplaced tags.
 
Remember to analyze the entire passage, identify all relevant PI-KFI pairs, and provide the output for each pair as specified. After completing the analysis, present the original passage with the <|retrieval|> tokens inserted in their appropriate positions as part of a new key in the JSON file. Only Ouput the JSON File.