#pragma once

#include <util/datetime/base.h>

namespace NSrvKernel {

    void GenReqId(IOutputStream& out, const TInstant start, const ui64 random) noexcept;

    void GenMarketReqId(IOutputStream& out, const TInstant start, const ui64 random) noexcept;

    void GenAdfoxReqId(IOutputStream& out, const ui64 random) noexcept;

    void GenSearchReqId(IOutputStream& out, const TInstant start, const ui64 random, TStringBuf hostname) noexcept;

    TString GenReqId(const TInstant start, const ui64 random) noexcept;

    TString GenMarketReqId(const TInstant start, const ui64 random) noexcept;

    TString GenAdfoxReqId(const ui64 random) noexcept;

    TString GenSearchReqId(const TInstant start, const ui64 random, TStringBuf hostname) noexcept;
}
