public Value Kyureki(IReadOnlyList <Value> args) { ArgumentsVerifier.VerifyAndThrow(args, "s", ErrorType.InvalidArgument); var date = DateTimeUtility.ParseDateTime(args[0].String); var sb = new StringBuilder(); sb.Append(DateTimeUtility.DateTimeToKyurekiString(date)); sb.Append(DateTimeUtility.TryGetEtoString(date, out var eto) ? $" {eto}" : null); sb.Append(DateTimeUtility.TryGetRokuyoString(date, out var rokuyo) ? $" {rokuyo}" : null); return(new Value(sb.ToString())); }