# AUR0102

## Error Message

`AUR0102: Ast eval error: binding behavior "<behavior_name>" already applied.`

Where `<behavior_name>` is the name of the binding behavior applied multiple times.

## Description

This error occurs when the same binding behavior (e.g., `debounce`, `throttle`) is applied more than once to a single binding expression in the template. Each behavior should only be applied once per expression.

## Cause

The most common causes are:

1. **Accidental Repetition:** Simply typing the same binding behavior twice in the expression (e.g., `value & debounce & debounce`).
2. **Redundant Behaviors:** Applying two different binding behaviors that serve mutually exclusive purposes on the same binding (e.g., applying both `throttle` and `debounce` might be illogical and could potentially lead to this or other errors depending on internal implementation, although this specific error checks for identical behavior names).

## Solution

Review the binding expression identified in the error message and remove the duplicate binding behavior application. Ensure that each desired behavior is listed only once using the `&` syntax.

## Example

```html
<!-- Incorrect: 'debounce' is applied twice -->
<input value.bind="searchTerm & debounce:500 & debounce:500">

<!-- Incorrect: 'throttle' is applied twice -->
<div mousemove.trigger="handleMouseMove($event) & throttle:100 & throttle:100"></div>

<!-- Correct: Apply each behavior only once -->
<input value.bind="searchTerm & debounce:500">
<div mousemove.trigger="handleMouseMove($event) & throttle:100"></div>

<!-- Example with multiple *different* behaviors (Correct) -->
<input value.bind="searchTerm & debounce:500 & updateTrigger:'blur'">
```

## Debugging Tips

* Carefully read the binding expression in your template where the error is reported.
* Look for repeated `& behaviorName` segments.
* Ensure you haven't accidentally copied and pasted parts of the binding expression leading to duplication.
