public static void Main()
var currentTime = new DateTimeOffset(2023, 08, 25, 6, 0, 0, TimeSpan.FromHours(0));
var dayOfWeekWithCurrentTime = currentTime.DayOfWeek.GetHashCode() - 1;
var timeOfWeekWithCurrentTime = TimeSpan.FromDays(dayOfWeekWithCurrentTime) + currentTime.TimeOfDay;
var result1 = TimeSpan.FromDays(7).Subtract(timeOfWeekWithCurrentTime).TotalDays;
Console.WriteLine("UTC user is: " + result1);
var currentTimeInProfileCulture = new DateTimeOffset(2023, 08, 25, 10, 0, 0, TimeSpan.FromHours(-8));
var dayOfWeekWithCurrentTimeInProfileCulture = currentTimeInProfileCulture.DayOfWeek.GetHashCode() - 1;
var timeOfWeekWithCurrentTimeInProfileCulture = TimeSpan.FromDays(dayOfWeekWithCurrentTimeInProfileCulture) + currentTimeInProfileCulture.TimeOfDay;
var result2 = TimeSpan.FromDays(7).Subtract(timeOfWeekWithCurrentTimeInProfileCulture).TotalDays;
Console.WriteLine("Wrong US user is: " + result2);
var currentTimeInProfileTimeAndOffset = new DateTimeOffset(2023, 08, 24, 22, 0, 0, TimeSpan.FromHours(-8));
var dayOfWeekWithCurrentTimeInProfileTimeAndCulture = currentTimeInProfileTimeAndOffset.DayOfWeek.GetHashCode() - 1;
var timeOfWeekWithCurrentTimeInProfileTimeAndCulture = TimeSpan.FromDays(dayOfWeekWithCurrentTimeInProfileTimeAndCulture) + currentTimeInProfileTimeAndOffset.TimeOfDay;
var result3 = TimeSpan.FromDays(7).Subtract(timeOfWeekWithCurrentTimeInProfileTimeAndCulture).TotalDays;
Console.WriteLine("Correct US user is: " + result3);