[Home](./index.md) > [bitburner](./bitburner.md) > [CodingContract](./bitburner.codingcontract.md) > [attempt](./bitburner.codingcontract.attempt.md)
## CodingContract.attempt() method
Attempts a coding contract, returning a reward string on success or empty string on failure.
Signature:
```typescript
attempt(answer: string | number | any[], filename: string, host?: string): string;
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
| answer | string \| number \| any\[\] | Attempted solution for the contract. |
| filename | string | Filename of the contract. |
| host | string | Hostname of the server containing the contract. Optional. Defaults to current server if not provided. |
Returns:
string
A reward description string on success, or an empty string on failure.
## Remarks
RAM cost: 10 GB
Attempts to solve the Coding Contract with the provided solution.
## Example 1
```js
// NS1
var reward = codingcontract.attempt(yourSolution, filename, hostname);
if (reward) {
tprint("Contract solved successfully! Reward: " + reward)
} else tprint("Failed to solve contract.")
```
## Example 2
```js
// NS2
const reward = codingcontract.attempt(yourSolution, filename, hostname);
if (reward) {
ns.tprint(`Contract solved successfully! Reward: ${reward}`)
} else ns.tprint("Failed to solve contract.")
```