|
|
|
---|---|---|
2246 | Artificial Intelligence (AI) capabilities added to Agiloft |
With new AI integration, Agiloft can analyze documents to extract metadata and clauses and assign risk
scores to new contracts. Enjoy pre-built AI Capabilities that can process data directly from your Agiloft
system.
|
2254 | Add Alexa integration and skills to your KB |
You can integrate your KB with private Alexa for Business skills to allow your users to ask their Alexa devices for updates on content in your KB. Custom skills can be designed for most basic operations, such as creating, updating, and deleting records, searching and reading data from existing records, counting records, and running actions. To integrate with Alexa, first develop an Alexa skill for your business needs and then connect it to your KB in the Alexa Extension wizard. After you connect a skill to your KB, you can map system contacts with individual users to integrate their Alexa devices with the KB. Actions taken by an Alexa device are attributed to these users, or to the default user assigned in the integration settings, as a backup. For details on setting up this integration, see Alexa Integration. |
2252 | Use Google Translate to create and maintain KB localization |
Offer multi-lingual support with less time and expense by using Google Translate machine translation to
localize the text in your system. You can use Google Translate to perform an initial translation of your system
to a new language, and you can also perform live translation when new KB entities are created.
For example, when you create a new table, you can set your Google Translate integration to automatically
prompt suggested machine translations for the table name in each selected language. You can easily adjust
the Google Translate suggestions to make sure the translation correctly represents your meaning. If you're
only familiar with one of the other supported languages, you can approve just those translations and leave
the others for someone else to review in the translation approval workflow.
You can also silently apply machine translation in the background and save those translations for review in a
dedicated approval workflow, all at once. This option is useful if the admins who build system entities aren't
the same people who review translation content.
This feature requires a Google Cloud account and API key.
For details about configuring this feature, see Google Translate Integration and
Localization.
|
2216 | Added Integration with Microsoft Dynamics | You can now send real-time, event-driven updates between your knowledgebase and Microsoft Dynamics
with new integration options. Changes in Agiloft are posted to Dynamics using Dynamics ODATA and ADAL
frameworks, and any changes on the Dynamics side are posted to Agiloft using REST APIs. This feature makes use of REST APIs, so it requires an Enterprise or Extended Enterprise Agiloft license.
For details, see Microsoft Dynamics Integration.
|
2230 | Users can now resize and rearrange dashboards while viewing them |
Users are now empowered to resize, rearrange, and remove widgets on their own dashboards in real time,
without going through an administrator. These temporary changes are kept until the user logs out or clicks
Reset in the top right corner.
User changes to dashboards don't change the base sizing and arrangement of widgets, which is still determined by the dashboard setup wizard.
For more information about dashboard functionality, see Dashboards. |
2262 | Activity Log can now be included in dashboard widgets |
The Activity Log table is now available for selection when building dashboard widgets, so dashboards may include login and other such data.
For more information, see Dashboard Widgets. |
2200 | Usability improvements in Combined Reports |
Design and use Combined Reports more easily with improved naming conventions.
Combined reports are found in the Home Menu.
|
2231 | Improvements to JavaScript charts |
Interactive JavaScript charts are now more user-friendly:
Drill-downs also offer a new type of display to show the records in a segment when that segment is clicked, using the view defined for the HTML report. If you choose this display option, the drill-down data is shown as an HTML report instead of a chart. This option is available on the Drill Down tab of the Charts wizard. |
2224 | Heat Bars now show better labels and tooltips on mouseover |
Give users more information by adding tooltips to your heat bars, which show up when users hover over a bar segment with the cursor. You can show a custom text label that describes the segment, the numerical value represented, or both.
To set up a mouseover tooltip, edit the Heat Bar field and go to the Display tab. In the Mouseover section, choose what you want to show. If you want to show a label, define the label at the top, next to the color settings.
For more information, see Heat Bars. |
2250 | Smoother selection of dates and times |
Date and time popups have been replaced with modal menus, leading to a smoother user
experience.
![]() |
2229 | Easily preview Summary layouts |
When you create or edit a Summary layout for a table, the Preview button now shows a preview of the Summary layout. To try it out, go to Setup [Table] > Layout, select Summary from the options at the top, create a layout or make any necessary adjustments, and then click Preview at the bottom.
For more information, see Layouts. |
2233 | Show input boxes below field labels in more places |
To allow more flexibility when setting up table layouts, the option to place the input box below and in line
with the field label is now available for all data types. With this option selected, the content appears directly
below the field label, and the existing settings are used to place the input instruction and other elements.
Previously, this option was only available for some data types, and in the Common Area.
|
2215 | Drag and drop Outlook attachments to Agiloft fields directly |
Files attached to open emails in Outlook can be dragged directly from Outlook to File with Versioning fields
in Agiloft to easily attach documents without saving them in an intermediary location. For example, if a
client sends supplementary documents in an email, you can open the relevant record in Agiloft and drag the
documents directly from Outlook to the appropriate File with Versioning field. Attachments, contacts,
meetings, and calendar events can all be dragged from Outlook.
This feature is natively available in the latest version of the Chrome and Edge browsers. If you use
another browser, there are free Outlook plug-ins that provide the same capability.
|
2243 | Resend DocuSign envelopes to recipients from Agiloft |
Easily resend DocuSign envelopes from Agiloft by clicking the Send button again, even if the envelope status
is Sent or Delivered. Previously, this function was blocked, and now the send envelope function works to send
emails regardless of the status. This is useful if the recipient is taking too long to sign the envelope, or if you
want to place it at the top of the signer's inbox by sending it again.
To make this option available to users, adjust the conditional visibility setting for the Send button so it appears for envelopes after they're sent:
|
2220 | Searches now include content in attached PowerPoint files | Full text searches now find term matches in attached PowerPoint documents and file names, just as they do
for attached PDF and Word documents. Keep in mind that this is still subject to the limit set in the
max_file_size_to_fts_index global variable, so if your PowerPoint documents are larger than your setting
for that variable, they won't be indexed for searching. |
2256 | EUI search macros can now be assigned their own view for the results |
You can now specify the View you want to use in #ew_query and #ew_searches_list EUI macros, so the
search results are shown with the best View for the content.
To include a View in these macros, add the view label in quotation marks as the last parameter. For
example, to apply a View named Mobile View in an #ew_searches_list macro, you might use this code:
#ew_searches_list("contract" "my_table" "searchselect" "input"
"showToolBar=false&showNavigation=true&showfastsearch=false" $mysearch "Mobile View")
For more information about EUI macros, see EUI Macro Reference.
|
2248 | New option to resolve field variables in text fields sent via email |
If you ever need to include variables in email templates that might themselves contain variables, you can
now resolve the variables on both levels by setting a new global variable.
For example, if you use an Email Texts table to preconfigure a set of email messages that are selectable by
users to send from within a contract record, these preconfigured email texts can now contain variables from
the contract from which they are sent, such as the start date, end date, contract title, and so
on.
With the new feature turned on, the text in the email message is first resolved, and then checked a second
time to resolve the value of any variables in that text field.
If the user sending the email doesn't have permission to view a field, the variable is removed and no value
is displayed. In the example above, a user with permission to see the Email Message but not the start date or
end date would receive an email without the content of those fields.
To turn this option on, go to Setup > System and click Manage Global Variables. Locate the "Iterative
resolving variables and formulas in the email body" global variable and set it to Yes.
For more information, see Sending Emails and the Global Variables List.
|
2206 | Can now use a compound field from People table in To User list of fields for Emails |
The "To User" list of fields in an email template was previously filtered to linked fields from the people table whose source field was either Login or Full Name. With this enhancement, linked fields based on a compound field from the people table will also be included on the list. For instance, if you create a compound field with "Salutation + Full Name" or "Rank + Full Name", and pull these fields into a linked user set in another table, an email template may be addressed based on the value in these fields.
To select a compound field, open a new email or email template and check the User Fields option in the To: section. Click the magnifying glass next to User Fields and select the compound field you want to use.
For more information about email, see Sending Email. |
2241 | Manage the main security settings from one convenient location |
The most important security settings and security-related global variables have been consolidated into one
new Security wizard, available at Setup > System > Security. The global variables that are now
managed in the Security wizard no longer appear in the global variables list, so admins will go to the
Security wizard to review or edit them.
Most of the global variables are listed on the General tab. The wizard includes the global variable name in
case you need to search for one. The General tab offers the following settings, which no longer appear in the
global variables manager:
On the Web Services tab, set groups, whitelists, and blacklists for SOAP and REST services.
On the IP Restrictions tab, set IP restrictions and whitelists.
For more information, see Security. |
2217 | Improve security with restricted file types for File with Versioning fields |
Improve security in your KB by restricting the allowed attachment file types for File with Versioning fields.
By default, the new Restrict Attachments option is set to prevent attachment of executable files and .bat files
to improve security for your system. This feature prevents file attachment even if an executable file is
renamed with a new extension, such as "malware.exe" being manually renamed "malware.txt".
You can change this setting to No restrictions if you want to allow all types of files to be attached, or you
can use the Allow attachments of only these types option to specify a finite list of file types allowed in the
field. To edit the setting, edit a File with Versioning field and go to the Options tab.
With the default setting, if a user tries to attach an executable file to the field, they will see an error
message and the file won't be attached.
For more information about these fields, see File with Versioning Fields.
|
2239 | New security control restricts JavaScript in Look and Feel and field labels |
To protect your system from potential attacks, JavaScript is now restricted by default in Look & Feel
controls and in field labels. For example, if a bad actor edits a field label to add a malicious script, this
feature prevents that script from being added when the record is saved.
For optimal security, we recommend you leave this new restriction active. However, if you permit
JavaScript usage in these locations, such as to extend the capabilities of the page header, you can go to Setup
> System, click Security, and set "JavaScript Injections in UI" to Yes to allow JavaScript.
If you already have JavaScript saved in any of these locations, that data is not overwritten or deleted until
someone edits the field or scheme and saves it again. To preserve existing JavaScript, set "JavaScript
Injections in UI" to "Yes" immediately, before anyone makes edits.
For more information, see Security.
|
2245 | Save time during imports by skipping records with no updates |
Data imports now offer an option to skip records when all the import fields exactly match the current field data. For example, if you are importing company data on a scheduled basis from a company master system, and you are mapping company name, tax ID, parent company, and type of company fields, during an update or import (match existing records on a unique field) the system checks for a full match of those fields before importing, and if it finds a record matching on all fields, the system skips importing that record entirely. Skipping such records can save significant time during large imports. If you set the new option to "Import record," the system sets the current date as the Date Updated and adds a history entry, even if all the field data is identical and the import makes no material change.
To use this option during an import, go to the Records tab and select "Replace matching records" or "Update imported fields only in matching records" in the Act on Existing Records section. This makes the new "If matching record is found" option active. If you set this option to "Skip record if all mapped fields match current data," the system skips records when all the import fields match the data in the record fields exactly. Otherwise, if a record matches only in the Match records field you selected, the record is replaced or updated according to your selection. For more information about imports, see Importing Record Data. |
2196 | Import additional data for multi-value linked fields |
Imports now offer a new feature for multi-value linked fields, allowing you to append the new values
instead of replacing them. For example, if a record already has "Marketing" selected in a multi-value
Departments field, you can import "Sales" and "Legal" as additional values so that all three are selected in
the record when the import is complete.
To use this new option during an import, go to the Records tab. Under Act on Existing Records, choose to
"Update imported fields only in matching records." This makes the Multi-Value Linked Fields option active,
where you can choose whether to append or overwrite the data.
For more information about imports, see Importing Record Data. |
2225 | Compress attached files during KB export |
When you export a KB in a non-Agiloft output format, you can now easily include attached files in your
export and compress everything into a .zip file using a new feature on the Options tab. With the "Zip
downloaded files" option selected, the export produces a .zip file for download, which contains the export in
your selected format as well as a Files folder with all the attachments inside.
For more information, see Transferring Knowledgebases Across Servers.
|
2244 | Auto-sized columns in Excel exports improve readability | Exports in Excel 2007+ format (.xlsx) now create cleaner, more readable columns that are automatically
sized according to the length of the field values. It makes files legible and easier to use, and it requires less
manual adjustment by the user. |
2218 | Easily analyze system performance from the admin console |
Troubleshoot performance issues quickly and easily by starting with the new Run Performance Analysis
button, available to administrators with access to the admin console. This button generates a report on all
system activities that might have caused performance issues since 12 AM that morning. The report includes
sections for main activities, top CPU processes, and VMStat output. Previously, this function was available
only as a script.
To access the new option, log in to the admin console, go to Debugging > Performance, and click Run
Performance Analysis.
For more information on performance optimization, see Diagnosing Server Performance Issues.
|
2207 | Print Field Documentation now includes all useful information |
Several changes make the system-generated field documentation more useful:
With these changes, you can use system field printout to excel to provide complete documentation about your system fields.
To print field documentation for a table, go to Setup [Table], open the Fields tab, and click Print Field Documentation. For more information, see Table Wizard. |
2236 | Set separate timeout for background rules with new global variable |
Previously, background rules used the default session timeout setting and could time out before completing
if that timeout was too low. This is correct with the new global variable Timeout: Run Rule in
Background, which you can use to set a longer timeout period for background rules. If you run rules
that take over four hours to complete, such as running an import on hundreds of thousands of records, you
should consider adjusting the timeout period. If the timeout period is too short, rules that take too long might
return an error message or fail to complete the defined actions.
By default, the new variable is set to 14400 seconds, or four hours. To adjust this variable, go to Setup > System > Manage Global Variables. Select the Variables with Default Values tab, and edit the Timeout: Run Rule in Background global variable. For more information, see the Global Variables List. |
2235 | Improved linked field update processing for multiple KBs |
When a field value is updated that is used as a source in multiple linked fields, the change is propagated to all the linked fields that use it. This linked field propagation has been optimized at the server level by allowing separate propagation threads for each KB. How many total threads can be used by linked field propagation is controlled from the admin console with the lf_propagation_threads global variable, which is set to 2 by default.
For more information, see the Global Variables List. |
2255 | New control added to reduce unnecessary History entries |
A new option in History fields allows you to fine-tune when a history entry is created, to make the entries
more meaningful and save space in large tables.
You can choose to create an entry:
The new option is designed to help you minimize history entries that don't provide valuable information, while still allowing flexibility for retaining history entries based on commonly tracked fields. Keep in mind that for history entries made by rules, this option works in concert with the options in the Rule Wizard.
For more information, see History Fields. |
2232 | Easily reference required and supported content types for REST interface services | REST interface services documentation now includes the supported content type for each operation. These content types are required in order for REST requests to perform a call successfully. For more information, see the operations listed in the REST Interface wiki section. |
2257 | Formula help now includes the secureHotlink function for encrypting URLs | The secureHotlink(url) function is now available on the Functions tab of Formula Help, making it easier to enter the syntax and to find the function when browsing. The function treats a URL as a hotlink, retrieves the project name from it, retrieves the public key for it, and encrypts the URL as secured hotlink. |
2219 | Localize Left Pane grouping names | Left Pane groups are now represented in the KB localization properties and available for translation. For
more information about localizing a KB, see Localization. |
2226 | Improved localization for Chart Collections |
Localization for Chart Collections is now based on a unique identifier that does not change when a Chart Collection is renamed, nor when a KB is imported, re-imported, or moved. Previously, Chart Collection localization would be lost under these circumstances.
For more information, see Chart Collections. |
2242 | Improved localization for Views | Localization for Views is now based on a unique identifier that does not change when a View is renamed,
nor when a KB is imported, re-imported, or moved. Previously, View localization would be lost under these
circumstances. |
2221 | Google gadget dashboard widgets deprecated |
The Google gadget dashboard widget type has been deprecated and will no longer be supported. You can
no longer create or edit Google gadget widgets, and existing widgets of this type now appear as a blank
space on any dashboards that include them.
If you have any Google gadget widgets assigned to any active dashboards, remove those widgets from the
dashboards to prevent blank widgets from appearing.
|
2227 | Quickbooks support retired | Integration with Quickbooks has been officially deprecated, and all corresponding code has been completely
removed. |
2303 | Additional REST security calls |
Make REST calls more secure using the new Login and Logout operations, which remove the need to include KB login credentials in REST URLs. Instead, you can pass the login and password as parameters into the Login operation, which then returns a token, expiration time, and authentication scheme to the client. The token can then be used in an Authorization request header, making it so that any following requests do not require credentials inside the URL. When you use a token in the Authorization request header, you can then use the new Logout operation to terminate the session associated with the token. For example, you might begin with a Login operation, which creates a 15-minute temporary session using the given credentials. Place the token in an Authorization request header for the following REST requests, which removes the need to set the login and password in the URL. When finished, use the Logout operation to terminate the temporary session. For more details, see the Security section of REST Interface. |
2266 | Nginx upgraded to 1.16.1 |
Nginx has been upgraded to version 1.16.1.
|
2223 | New Windows installations include Nginx by default | For additional security, Nginx is now installed by default when Agiloft is installed on a Windows device for
the first time. Note that Nginx is not installed automatically if IIS is running; if you're running IIS with your
system, work with Support to configure IIS with Agiloft. |
2237 | Agiloft Python scripts now use built-in Python version by default |
Agiloft now automatically uses the Python version included in the Agiloft installer, located at
If you need to use a different version of Python, go to Setup > System > Manage Global Variables,
locate the "Location of external Python directory" global variable, and enter the location of the appropriate
Python version in the format "python.dir=/filepath". For example: externalpythonlocation=/user/bin/
|
2240 | OCR engine has been upgraded to Tesseract 4 for better performance | OCR functionality in Agiloft has been upgraded from Tesseract 3 to Tesseract 4. Corresponding changes are
done automatically by the installer. |
2234 | Updated, ADA-compliant interface | The ADA interface has been updated to reflect the changes in the current Section 508 standards for ADA compliance. |
2272 | Longer names allowed in merge action default file names | Merge Document actions now allow up to 512 characters for the Default File Name field. Additionally, the
field now uses a larger size text box for easier viewing. |
2228 | Table action bars and headers remain visible when scrolling in setup screens | Table action bars and headers no longer disappear when scrolling in certain lists inside wizard and setup
screens, such as field lists and email template lists. When you scroll down in these locations, the header,
column names, and action bar all remain visible at the top of the screen to make navigation and actions
easier. |
|
|
|
---|---|---|
2281 | Rounding has been added for Numerical Result widgets, resulting in cleaner display |
Make Numerical Result widgets on dashboards look neat and tidy by controlling the maximum number of
decimal places. You can set the maximum decimal digits for each Numerical Result widget using the new
"Round data" option.
For more information, see Numerical Result Widgets.
|
2292 | Maintain bookmarks in MS Word files with new custom variable |
You can now include bookmarks in the final output of Microsoft Word-format print templates, so readers
can use the bookmarks to navigate in the finished document. To preserve bookmarks in the print template
output, add a custom variable called print_template_remove_bookmark and set it to No. This setting applies
only to print templates using Microsoft Word formatting.
This change also resolved a previous issue that sometimes caused a "Section not found" error when documents generated by print templates are attached to a DocuSign envelope. This error is fixed automatically, so you do not need to add the custom variable unless you want to use it to preserve bookmarks for Word-format print templates.
For more information, see Creating Print Templates. |
2275 | Email sending to a selected Email field uses the system's default email field in the contact record |
Previously, if an email template was addressed to a particular email field, the system's selection of the
correct contact to send to was unreliable if a table had multiple email fields, and the selected email address
was found in multiple contacts in different fields.
Now, the system uses the Contacts.Email field as the person to send to, if it exists, and if that field has been
deleted, the system uses the first non-linked field with the Email data type.
|
2285 | Repair corrupted personal GUI preferences from Admin Console | Administrators can easily solve issues with users' personal GUI preferences, such as an incomplete or
missing Left Pane, with an option to simply reset those preferences from the Admin Console. To reset a
user's preferences, log in to the Admin Console, edit the knowledgebase, click Reset User GUI Preferences,
and enter the user's login. |
2294 | New warning when memory allocation is set too low |
Memory allocation problems are now easier to avoid, with Agiloft providing a warning after a system upgrade if the memory allocation settings for JBoss or MySQL are below 50% of the recommended amount. For information on changing the memory allocation settings, see the Settings section of Using the Setup Assistant. |
2286 | Prevent performance slowdowns by removing automatic String searches |
Previously, if a full-text search (a search using the -TEXT- option without the String checkbox selected) didn't
return any results, the system automatically ran the search again with the String checkbox selected. String
searches run very slowly on large tables, and they impact performance for other users on the server.
To prevent these unintended performance draws, full-text searches with no results no longer automatically
initiate a String search. Users can still manually run a String search on their query as desired.
|
2269 | Optimized Integrity Manager logic on removing fields from History | The Integrity Manager now has better logic for evaluating fields being removed from History tracking. The
Integrity Manager now flags removed fields only if they are used in advanced filters and searches.
Previously, it prevented many fields from being removed with false positive messages.
|
2251 | General performance improvements |
There have been several general changes to improve system performance. Specifically:
|
2259 | REST EWRetrieve Content-Type fix | The REST EWRetrieve method now returns the correct Content-Type of the attachment, which is the
Content-Type set when the file is attached manually or using the EWAttach command. |
2261 | Improved EUI templates for trial KBs | Template KBs include better default permissions in EUI templates for a better user experience. |
2267 | Displaying reports with formulas on a Home Page | Now, Home Page widgets display the final calculated values instead of formulas and variables. |
2288 | MySQL version upgraded to 5.7.28 | MySQL has been upgraded to version 5.7.28. |
2271 | Action buttons now allow apostrophes and other symbols | You can now include apostrophes and other symbols in Action Button labels. |
2263 | Preview outbound email Look and Feel settings |
When you make changes to Email Schemes in the Look and Feel wizard, you can click View Example in the
Global tab to see a preview of your changes. Previously, this button did not work and did not render
previews. To access email scheme examples, go to Setup > Look and Feel, click Email Schemes, and click
the first View Example button..
|
2268 | Fixed memory leaks that resulted in poor performance | Fixed the memory leaks that could occur during linked fields propagation and when viewing a record's full
History. Memory leaks can cause server slowdown. |
2287 | Fixed pop-up button and window sizes | Pop-up window size and button placement now render based on the size of the original window. This
prevents narrow pop-ups and incomplete button labels. |
2295 | Numerical result widget correctly shows grouping symbol |
Numerical Result widgets now correctly show grouping symbols when the Grouping option is set to Yes. For
example, with the Grouping option set to Yes, 229000 is displayed as 229,000.
|
2279 | Fixed Numerical Result widgets availability for end-users | Fixed an issue where power user permissions were not checked consistently for Numerical Result widgets,
so that end users sometimes incorrectly had access to them. Numerical widgets are not available
under the end user license. |
2291 | Fixed text overlapping images in Hotlink widgets | Hotlink text no longer overlaps images attached to Hotlink widgets. |
2278 | Fixed silent document comparison failure and rollback on password-protected documents | When a document comparison is run on a document that is password-protected, the system now provides
an error message to say that the comparison wasn't possible, and it no longer blocks execution of other
actions running in the rule. For example, if a rule applies document comparison when a new document is
uploaded, this fix prevents the failure from removing the uploaded version. |
2265 | Fixed action button navigation to headings and non-text fields | Fixed action button navigation when it points to a heading or non-text field. Previously it worked
inconsistently. These settings are controlled in the action button field wizard. |
2260 | Fixed exception when changing Action Button options in DocuSign Envelope table | Fixed an exception in the DocuSign Envelope table that occurred when opening the Options tab of the Action Button field wizard. Now you can access this tab and change and save the settings. |
2276 | Fixed Edit and Checkout failure on long file names | Fixed an issue where Edit and Checkout functionality failed if the source file name was too long, due to Microsoft length limitations. The fix includes abbreviating part of the file name to make it fit within MS's length limits. |
2258 | Fixed exception caused by linked attachments handling | This version fixes an exception that occurred when viewing or creating records under some circumstances.
It was caused by incorrect handling of versioned linked attachments. This exception no longer occurs. |
2283 | Fixed font style setting for print templates | Fixed an issue where the font style of clause text was not reflected in the print template when the
printtemplatestylepreference global variable is set to "printtemplate." Now, the font style of the clause text
is reflected in the print template. |
2277 | Fixed Elapsed Time Field calculation for excluding hours based on a team's working hours | The Elapsed Time field option to "Exclude the appropriate hours for each value it held" when applied to
working hours of teams, now correctly retrieves team names from history and fetches the team ID to
determine working and non-working hours. |
2273 | Long linked field propagation no longer fails on user session expiration | The session expiration algorithm now allows for a lengthy linked field propagation process. It no
longer relies on the user's session timeout. This will prevent failure when propagating changes to linked
fields across many thousands of records. |
2293 | New SAML users now update linked field values correctly | When an employee is created from a SAML login, all of the fields in linked field sets are now populated
correctly. Previously the value for a linked field was mapped correctly, but no actual link was created,
so other fields as part of the linked set were not properly set. |