class FixedWatchWindowRateLimiter implements RateLimiter {

    private final LongAdder count;
    private final Stopwatch watch;
    private final int limit;

    public FixedWatchWindowRateLimiter(int limitPerSecond) {
        this.limit = limitPerSecond;
        this.watch = Stopwatch.createStarted();
        this.count = new LongAdder();
    }

    @Override
    public boolean tryAcquire() {<FILL_FUNCTION_BODY>}
}

        if (count.intValue() < limit) {
            count.increment();
            return true;
        }

        // Reset only if 1000ms elapsed
        if (watch.elapsed(TimeUnit.MILLISECONDS) >= RESET_PERIOD) {
            count.reset();
            watch.reset();
            count.increment();
            return true;
        }
        return false;
    
<no_super_class>