# \#KJ0 | Test is not reproducible in number literal stage of interpreter challenge

**URL:** <https://forum.codecrafters.io/t/kj0-test-is-not-reproducible-in-number-literal-stage-of-interpreter-challenge/1671>\
**Category:** Challenges\
**Tags:** challenge:interpreter\
**Created:** [September 9, 2024, 10:53am UTC](https://forum.codecrafters.io/t/kj0-test-is-not-reproducible-in-number-literal-stage-of-interpreter-challenge/1671 "2024-09-09T10:53:13Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![andy1li](https://yyz1.discourse-cdn.com/flex003/user_avatar/forum.codecrafters.io/andy1li/32/10_2.png) [@andy1li](https://forum.codecrafters.io/u/andy1li)\
**Post date:** [September 10, 2024, 6:03pm UTC](https://forum.codecrafters.io/t/kj0-test-is-not-reproducible-in-number-literal-stage-of-interpreter-challenge/1671/2 "2024-09-10T18:03:32Z")

</div>

Let’s first review what a [lexeme](https://craftinginterpreters.com/scanning.html#lexemes-and-tokens) is:

> The lexemes are the raw substrings of the source code.

Then the structure of a [token](https://craftinginterpreters.com/scanning.html#location-information):

```java
class Token {
  final TokenType type;
  final String lexeme;
  final Object literal;

  public String toString() {
    return type + " " + lexeme + " " + literal;
  }
}

```

In the case of “NUMBER `42.40` 42.4”, the lexeme is `"42.40"`. It is just a raw string from the source code, and you don’t need to change it in any way:

 ![image](https://canada1.discourse-cdn.com/flex003/uploads/codecrafters/original/2X/1/10ec9d07cda342e93e4cb2aedf81ad38b7143478.png)

Does this make sense?

---

_[View the full topic](https://forum.codecrafters.io/t/kj0-test-is-not-reproducible-in-number-literal-stage-of-interpreter-challenge/1671)._
