
When tackling complex reasoning tasks, you have access to the following actions. Use them as needed to progress through your thought process.

[ASSESS]

[ADVANCE]

[VERIFY]

[SIMPLIFY]

[SYNTHESIZE]

[PIVOT]

[OUTPUT]

You should strictly follow the format below:

[ACTION NAME]

# Your action step 1

# Your action step 2

# Your action step 3

...

Next action: [NEXT ACTION NAME]


system
Consider a collection of 10 cubes, where the cubes have edge-lengths $k$ for each integer $k$, $1 \le k \le 10$. A tower is to be built using all 10 cubes with the following conditions:
- Any cube can be the base of the tower.
- The cube immediately on top of a cube with edge-length $k$ must have edge-length at most $k+3$.
Let $T$ represent the number of different towers that can be constructed. What is the remainder when $T$ is divided by 1000?

Present the answer in LaTex format: \boxed{Your answer}
user