<commit_before>## Usage

Basic usage is as follows:

```go
import (
    "log"

    "github.com/TapLink/go-taplink"
)

func main() {

    api := taplink.New("my-api-key")
    pwd, err := api.NewPassword([]byte("<PASSWORD>"))
    if err != nil {
        log.Println("NewPassword error", err)
        return
    }

    verify, err := api.VerifyPassword([]byte("<PASSWORD>"), pwd.Hash, pwd.VersionID)
    if err != nil {
        log.Println("VerifyPassword error", err)
        return
    }

    log.Println("Did it match?", verify.Matched)
}
```

You can also set parameters related to HTTP requests, and also enable/disable
tracking of statisics:

```go
import (
	"log"
	"time"

	"github.com/TapLink/taplink-go"
)

func main() {

	// You can update the RetryLimit and RetryDelay for failed HTTP requests, too.
	// The API client will adhere to these settings.
	taplink.RetryLimit = 10
	taplink.RetryDelay = 30 * time.Second

	api := taplink.New("my-api-key")

	// To enable the collection of stats for the API client, use EnableStats()
	api.EnableStats()
	api.VerifyPassword([]byte("<PASSWORD>"), []byte("expected"), 0)

	// To get the stats, use these funcs...
	log.Println("total number of requests made", api.Requests())
	log.Println("num requests which had errors", api.Errors())
	log.Println("pct of requests which had errors", api.ErrorPct())
	log.Println("average time of requests", api.Latency())

	// To disable the collection of stats, use DisableStats()
	api.DisableStats()
}

}
```<commit_msg>Fixes typo in README<commit_after>## Usage

Basic usage is as follows:

```go
import (
    "log"

    "github.com/TapLink/go-taplink"
)

func main() {

    api := taplink.New("my-api-key")
    pwd, err := api.NewPassword([]byte("<PASSWORD>"))
    if err != nil {
        log.Println("NewPassword error", err)
        return
    }

    verify, err := api.VerifyPassword([]byte("<PASSWORD>"), pwd.Hash, pwd.VersionID)
    if err != nil {
        log.Println("VerifyPassword error", err)
        return
    }

    log.Println("Did it match?", verify.Matched)
}
```

You can also set parameters related to HTTP requests, and also enable/disable
tracking of statistics:

```go
import (
	"log"
	"time"

	"github.com/TapLink/taplink-go"
)

func main() {

	// You can update the RetryLimit and RetryDelay for failed HTTP requests, too.
	// The API client will adhere to these settings.
	taplink.RetryLimit = 10
	taplink.RetryDelay = 30 * time.Second

	api := taplink.New("my-api-key")

	// To enable the collection of stats for the API client, use EnableStats()
	api.EnableStats()
	api.VerifyPassword([]byte("<PASSWORD>"), []byte("<PASSWORD>"), 0)

	// To get the stats, use these funcs...
	log.Println("total number of requests made", api.Requests())
	log.Println("num requests which had errors", api.Errors())
	log.Println("pct of requests which had errors", api.ErrorPct())
	log.Println("average time of requests", api.Latency())

	// To disable the collection of stats, use DisableStats()
	api.DisableStats()
}
```
{'fraction_non_alphanumeric': 0.14636574842349817, 'fraction_numerical': 0.003318951211417192, 'mean_word_length': 3.5119760479041915, 'pattern_counts': {'":': 0, '<': 10, '<?xml version=': 0, '>': 10, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3151149', 'n_tokens_mistral': 1022, 'n_tokens_neox': 989, 'n_words': 295}