pulumi-signalfx 7.13.0a1749709968__tar.gz → 7.14.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/PKG-INFO +1 -1
  2. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/__init__.py +19 -0
  3. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/_inputs.py +18 -18
  4. pulumi_signalfx-7.14.0/pulumi_signalfx/automatedarchival/__init__.py +12 -0
  5. pulumi_signalfx-7.14.0/pulumi_signalfx/automatedarchival/_inputs.py +135 -0
  6. pulumi_signalfx-7.14.0/pulumi_signalfx/automatedarchival/exempt_metric.py +153 -0
  7. pulumi_signalfx-7.14.0/pulumi_signalfx/automatedarchival/outputs.py +106 -0
  8. pulumi_signalfx-7.14.0/pulumi_signalfx/automatedarchival/settings.py +434 -0
  9. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/azure/integration.py +50 -3
  10. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/config/__init__.pyi +1 -1
  11. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/config/vars.py +1 -1
  12. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/outputs.py +12 -12
  13. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/provider.py +8 -3
  14. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/pulumi-plugin.json +1 -1
  15. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx.egg-info/PKG-INFO +1 -1
  16. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx.egg-info/SOURCES.txt +5 -0
  17. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pyproject.toml +1 -1
  18. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/README.md +0 -0
  19. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/_utilities.py +0 -0
  20. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/alert_muting_rule.py +0 -0
  21. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/aws/__init__.py +0 -0
  22. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/aws/_inputs.py +0 -0
  23. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/aws/external_integration.py +0 -0
  24. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/aws/integration.py +0 -0
  25. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/aws/outputs.py +0 -0
  26. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/aws/token_integration.py +0 -0
  27. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/azure/__init__.py +0 -0
  28. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/azure/_inputs.py +0 -0
  29. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/azure/outputs.py +0 -0
  30. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/config/__init__.py +0 -0
  31. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/dashboard.py +0 -0
  32. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/dashboard_group.py +0 -0
  33. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/data_link.py +0 -0
  34. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/detector.py +0 -0
  35. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/event_feed_chart.py +0 -0
  36. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/gcp/__init__.py +0 -0
  37. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/gcp/_inputs.py +0 -0
  38. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/gcp/integration.py +0 -0
  39. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/gcp/outputs.py +0 -0
  40. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/get_dimension_values.py +0 -0
  41. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/heatmap_chart.py +0 -0
  42. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/jira/__init__.py +0 -0
  43. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/jira/integration.py +0 -0
  44. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/list_chart.py +0 -0
  45. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/log/__init__.py +0 -0
  46. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/log/_inputs.py +0 -0
  47. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/log/outputs.py +0 -0
  48. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/log/timeline.py +0 -0
  49. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/log/view.py +0 -0
  50. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/metric_ruleset.py +0 -0
  51. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/opsgenie/__init__.py +0 -0
  52. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/opsgenie/integration.py +0 -0
  53. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/org_token.py +0 -0
  54. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/organization_members.py +0 -0
  55. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/pagerduty/__init__.py +0 -0
  56. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/pagerduty/get_integration.py +0 -0
  57. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/pagerduty/integration.py +0 -0
  58. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/py.typed +0 -0
  59. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/servicenow/__init__.py +0 -0
  60. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/servicenow/integration.py +0 -0
  61. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/single_value_chart.py +0 -0
  62. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/slack/__init__.py +0 -0
  63. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/slack/integration.py +0 -0
  64. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/slo.py +0 -0
  65. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/slo_chart.py +0 -0
  66. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/table_chart.py +0 -0
  67. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/team.py +0 -0
  68. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/text_chart.py +0 -0
  69. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/time_chart.py +0 -0
  70. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/victorops/__init__.py +0 -0
  71. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/victorops/integration.py +0 -0
  72. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx/webhook_integration.py +0 -0
  73. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx.egg-info/dependency_links.txt +0 -0
  74. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx.egg-info/requires.txt +0 -0
  75. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/pulumi_signalfx.egg-info/top_level.txt +0 -0
  76. {pulumi_signalfx-7.13.0a1749709968 → pulumi_signalfx-7.14.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulumi_signalfx
3
- Version: 7.13.0a1749709968
3
+ Version: 7.14.0
4
4
  Summary: A Pulumi package for creating and managing SignalFx resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.io
@@ -32,6 +32,8 @@ from . import outputs
32
32
 
33
33
  # Make subpackages available:
34
34
  if typing.TYPE_CHECKING:
35
+ import pulumi_signalfx.automatedarchival as __automatedarchival
36
+ automatedarchival = __automatedarchival
35
37
  import pulumi_signalfx.aws as __aws
36
38
  aws = __aws
37
39
  import pulumi_signalfx.azure as __azure
@@ -55,6 +57,7 @@ if typing.TYPE_CHECKING:
55
57
  import pulumi_signalfx.victorops as __victorops
56
58
  victorops = __victorops
57
59
  else:
60
+ automatedarchival = _utilities.lazy_import('pulumi_signalfx.automatedarchival')
58
61
  aws = _utilities.lazy_import('pulumi_signalfx.aws')
59
62
  azure = _utilities.lazy_import('pulumi_signalfx.azure')
60
63
  config = _utilities.lazy_import('pulumi_signalfx.config')
@@ -70,6 +73,22 @@ else:
70
73
  _utilities.register(
71
74
  resource_modules="""
72
75
  [
76
+ {
77
+ "pkg": "signalfx",
78
+ "mod": "automatedarchival/exemptMetric",
79
+ "fqn": "pulumi_signalfx.automatedarchival",
80
+ "classes": {
81
+ "signalfx:automatedarchival/exemptMetric:ExemptMetric": "ExemptMetric"
82
+ }
83
+ },
84
+ {
85
+ "pkg": "signalfx",
86
+ "mod": "automatedarchival/settings",
87
+ "fqn": "pulumi_signalfx.automatedarchival",
88
+ "classes": {
89
+ "signalfx:automatedarchival/settings:Settings": "Settings"
90
+ }
91
+ },
73
92
  {
74
93
  "pkg": "signalfx",
75
94
  "mod": "aws/externalIntegration",
@@ -2532,7 +2532,7 @@ if not MYPY:
2532
2532
  class HeatmapChartColorScaleArgsDict(TypedDict):
2533
2533
  color: pulumi.Input[builtins.str]
2534
2534
  """
2535
- The color range to use. Hex values are not supported here. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2535
+ The color range to use. Hex values are not supported here. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2536
2536
  """
2537
2537
  gt: NotRequired[pulumi.Input[builtins.float]]
2538
2538
  """
@@ -2562,7 +2562,7 @@ class HeatmapChartColorScaleArgs:
2562
2562
  lt: Optional[pulumi.Input[builtins.float]] = None,
2563
2563
  lte: Optional[pulumi.Input[builtins.float]] = None):
2564
2564
  """
2565
- :param pulumi.Input[builtins.str] color: The color range to use. Hex values are not supported here. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2565
+ :param pulumi.Input[builtins.str] color: The color range to use. Hex values are not supported here. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2566
2566
  :param pulumi.Input[builtins.float] gt: Indicates the lower threshold non-inclusive value for this range.
2567
2567
  :param pulumi.Input[builtins.float] gte: Indicates the lower threshold inclusive value for this range.
2568
2568
  :param pulumi.Input[builtins.float] lt: Indicates the upper threshold non-inclusive value for this range.
@@ -2582,7 +2582,7 @@ class HeatmapChartColorScaleArgs:
2582
2582
  @pulumi.getter
2583
2583
  def color(self) -> pulumi.Input[builtins.str]:
2584
2584
  """
2585
- The color range to use. Hex values are not supported here. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2585
+ The color range to use. Hex values are not supported here. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2586
2586
  """
2587
2587
  return pulumi.get(self, "color")
2588
2588
 
@@ -2643,7 +2643,7 @@ if not MYPY:
2643
2643
  class ListChartColorScaleArgsDict(TypedDict):
2644
2644
  color: pulumi.Input[builtins.str]
2645
2645
  """
2646
- The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2646
+ The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2647
2647
  """
2648
2648
  gt: NotRequired[pulumi.Input[builtins.float]]
2649
2649
  """
@@ -2673,7 +2673,7 @@ class ListChartColorScaleArgs:
2673
2673
  lt: Optional[pulumi.Input[builtins.float]] = None,
2674
2674
  lte: Optional[pulumi.Input[builtins.float]] = None):
2675
2675
  """
2676
- :param pulumi.Input[builtins.str] color: The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2676
+ :param pulumi.Input[builtins.str] color: The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2677
2677
  :param pulumi.Input[builtins.float] gt: Indicates the lower threshold non-inclusive value for this range.
2678
2678
  :param pulumi.Input[builtins.float] gte: Indicates the lower threshold inclusive value for this range.
2679
2679
  :param pulumi.Input[builtins.float] lt: Indicates the upper threshold non-inculsive value for this range.
@@ -2693,7 +2693,7 @@ class ListChartColorScaleArgs:
2693
2693
  @pulumi.getter
2694
2694
  def color(self) -> pulumi.Input[builtins.str]:
2695
2695
  """
2696
- The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2696
+ The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2697
2697
  """
2698
2698
  return pulumi.get(self, "color")
2699
2699
 
@@ -2809,7 +2809,7 @@ if not MYPY:
2809
2809
  """
2810
2810
  color: NotRequired[pulumi.Input[builtins.str]]
2811
2811
  """
2812
- The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2812
+ The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2813
2813
  """
2814
2814
  display_name: NotRequired[pulumi.Input[builtins.str]]
2815
2815
  """
@@ -2841,7 +2841,7 @@ class ListChartVizOptionArgs:
2841
2841
  value_unit: Optional[pulumi.Input[builtins.str]] = None):
2842
2842
  """
2843
2843
  :param pulumi.Input[builtins.str] label: Label used in the publish statement that displays the plot (metric time series data) you want to customize.
2844
- :param pulumi.Input[builtins.str] color: The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2844
+ :param pulumi.Input[builtins.str] color: The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2845
2845
  :param pulumi.Input[builtins.str] display_name: Specifies an alternate value for the Plot Name column of the Data Table associated with the chart.
2846
2846
  :param pulumi.Input[builtins.str] value_prefix: , `value_suffix` - (Optional) Arbitrary prefix/suffix to display with the value of this plot.
2847
2847
  :param pulumi.Input[builtins.str] value_suffix: An arbitrary suffix to display with the value of this plot
@@ -2875,7 +2875,7 @@ class ListChartVizOptionArgs:
2875
2875
  @pulumi.getter
2876
2876
  def color(self) -> Optional[pulumi.Input[builtins.str]]:
2877
2877
  """
2878
- The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
2878
+ The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
2879
2879
  """
2880
2880
  return pulumi.get(self, "color")
2881
2881
 
@@ -3808,7 +3808,7 @@ if not MYPY:
3808
3808
  class SingleValueChartColorScaleArgsDict(TypedDict):
3809
3809
  color: pulumi.Input[builtins.str]
3810
3810
  """
3811
- The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
3811
+ The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
3812
3812
  """
3813
3813
  gt: NotRequired[pulumi.Input[builtins.float]]
3814
3814
  """
@@ -3838,7 +3838,7 @@ class SingleValueChartColorScaleArgs:
3838
3838
  lt: Optional[pulumi.Input[builtins.float]] = None,
3839
3839
  lte: Optional[pulumi.Input[builtins.float]] = None):
3840
3840
  """
3841
- :param pulumi.Input[builtins.str] color: The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
3841
+ :param pulumi.Input[builtins.str] color: The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
3842
3842
  :param pulumi.Input[builtins.float] gt: Indicates the lower threshold non-inclusive value for this range.
3843
3843
  :param pulumi.Input[builtins.float] gte: Indicates the lower threshold inclusive value for this range.
3844
3844
  :param pulumi.Input[builtins.float] lt: Indicates the upper threshold non-inculsive value for this range.
@@ -3858,7 +3858,7 @@ class SingleValueChartColorScaleArgs:
3858
3858
  @pulumi.getter
3859
3859
  def color(self) -> pulumi.Input[builtins.str]:
3860
3860
  """
3861
- The color to use. Must be one of gray, blue, light_blue, navy, dark_orange, orange, dark_yellow, magenta, cerise, pink, violet, purple, gray_blue, dark_green, green, aquamarine, red, yellow, vivid_yellow, light_green, or lime_green.
3861
+ The color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
3862
3862
  """
3863
3863
  return pulumi.get(self, "color")
3864
3864
 
@@ -5407,7 +5407,7 @@ if not MYPY:
5407
5407
  class TimeChartHistogramOptionArgsDict(TypedDict):
5408
5408
  color_theme: NotRequired[pulumi.Input[builtins.str]]
5409
5409
  """
5410
- Color to use : gray, blue, azure, navy, brown, orange, yellow, iris, magenta, pink, purple, violet, lilac, emerald, green, aquamarine, red, gold, greenyellow, chartreuse, jade
5410
+ Color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
5411
5411
  """
5412
5412
  elif False:
5413
5413
  TimeChartHistogramOptionArgsDict: TypeAlias = Mapping[str, Any]
@@ -5417,7 +5417,7 @@ class TimeChartHistogramOptionArgs:
5417
5417
  def __init__(__self__, *,
5418
5418
  color_theme: Optional[pulumi.Input[builtins.str]] = None):
5419
5419
  """
5420
- :param pulumi.Input[builtins.str] color_theme: Color to use : gray, blue, azure, navy, brown, orange, yellow, iris, magenta, pink, purple, violet, lilac, emerald, green, aquamarine, red, gold, greenyellow, chartreuse, jade
5420
+ :param pulumi.Input[builtins.str] color_theme: Color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
5421
5421
  """
5422
5422
  if color_theme is not None:
5423
5423
  pulumi.set(__self__, "color_theme", color_theme)
@@ -5426,7 +5426,7 @@ class TimeChartHistogramOptionArgs:
5426
5426
  @pulumi.getter(name="colorTheme")
5427
5427
  def color_theme(self) -> Optional[pulumi.Input[builtins.str]]:
5428
5428
  """
5429
- Color to use : gray, blue, azure, navy, brown, orange, yellow, iris, magenta, pink, purple, violet, lilac, emerald, green, aquamarine, red, gold, greenyellow, chartreuse, jade
5429
+ Color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
5430
5430
  """
5431
5431
  return pulumi.get(self, "color_theme")
5432
5432
 
@@ -5498,7 +5498,7 @@ if not MYPY:
5498
5498
  """
5499
5499
  color: NotRequired[pulumi.Input[builtins.str]]
5500
5500
  """
5501
- Color to use : gray, blue, azure, navy, brown, orange, yellow, iris, magenta, pink, purple, violet, lilac, emerald, green, aquamarine.
5501
+ Color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
5502
5502
  """
5503
5503
  display_name: NotRequired[pulumi.Input[builtins.str]]
5504
5504
  """
@@ -5537,7 +5537,7 @@ class TimeChartVizOptionArgs:
5537
5537
  """
5538
5538
  :param pulumi.Input[builtins.str] label: Label used in the publish statement that displays the plot (metric time series data) you want to customize.
5539
5539
  :param pulumi.Input[builtins.str] axis: Y-axis associated with values for this plot. Must be either `right` or `left`.
5540
- :param pulumi.Input[builtins.str] color: Color to use : gray, blue, azure, navy, brown, orange, yellow, iris, magenta, pink, purple, violet, lilac, emerald, green, aquamarine.
5540
+ :param pulumi.Input[builtins.str] color: Color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
5541
5541
  :param pulumi.Input[builtins.str] display_name: Specifies an alternate value for the Plot Name column of the Data Table associated with the chart.
5542
5542
  :param pulumi.Input[builtins.str] plot_type: The visualization style to use. Must be `"LineChart"`, `"AreaChart"`, `"ColumnChart"`, or `"Histogram"`. Chart level `plot_type` by default.
5543
5543
  :param pulumi.Input[builtins.str] value_prefix: , `value_suffix` - (Optional) Arbitrary prefix/suffix to display with the value of this plot.
@@ -5588,7 +5588,7 @@ class TimeChartVizOptionArgs:
5588
5588
  @pulumi.getter
5589
5589
  def color(self) -> Optional[pulumi.Input[builtins.str]]:
5590
5590
  """
5591
- Color to use : gray, blue, azure, navy, brown, orange, yellow, iris, magenta, pink, purple, violet, lilac, emerald, green, aquamarine.
5591
+ Color to use. Must be one of red, gold, iris, green, jade, gray, blue, azure, navy, brown, orange, yellow, magenta, cerise, pink, violet, purple, lilac, emerald, chartreuse, yellowgreen, aquamarine.
5592
5592
  """
5593
5593
  return pulumi.get(self, "color")
5594
5594
 
@@ -0,0 +1,12 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ from .. import _utilities
7
+ import typing
8
+ # Export this package's modules as members:
9
+ from .exempt_metric import *
10
+ from .settings import *
11
+ from ._inputs import *
12
+ from . import outputs
@@ -0,0 +1,135 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from .. import _utilities
17
+
18
+ __all__ = [
19
+ 'ExemptMetricExemptMetricArgs',
20
+ 'ExemptMetricExemptMetricArgsDict',
21
+ ]
22
+
23
+ MYPY = False
24
+
25
+ if not MYPY:
26
+ class ExemptMetricExemptMetricArgsDict(TypedDict):
27
+ name: pulumi.Input[builtins.str]
28
+ """
29
+ Name of the metric to be exempted from automated archival
30
+ """
31
+ created: NotRequired[pulumi.Input[builtins.int]]
32
+ """
33
+ Timestamp of when the automated archival setting was created
34
+ """
35
+ creator: NotRequired[pulumi.Input[builtins.str]]
36
+ """
37
+ ID of the creator of the automated archival setting
38
+ """
39
+ last_updated: NotRequired[pulumi.Input[builtins.int]]
40
+ """
41
+ Timestamp of when the automated archival setting was last updated
42
+ """
43
+ last_updated_by: NotRequired[pulumi.Input[builtins.str]]
44
+ """
45
+ ID of user who last updated the automated archival setting
46
+ """
47
+ elif False:
48
+ ExemptMetricExemptMetricArgsDict: TypeAlias = Mapping[str, Any]
49
+
50
+ @pulumi.input_type
51
+ class ExemptMetricExemptMetricArgs:
52
+ def __init__(__self__, *,
53
+ name: pulumi.Input[builtins.str],
54
+ created: Optional[pulumi.Input[builtins.int]] = None,
55
+ creator: Optional[pulumi.Input[builtins.str]] = None,
56
+ last_updated: Optional[pulumi.Input[builtins.int]] = None,
57
+ last_updated_by: Optional[pulumi.Input[builtins.str]] = None):
58
+ """
59
+ :param pulumi.Input[builtins.str] name: Name of the metric to be exempted from automated archival
60
+ :param pulumi.Input[builtins.int] created: Timestamp of when the automated archival setting was created
61
+ :param pulumi.Input[builtins.str] creator: ID of the creator of the automated archival setting
62
+ :param pulumi.Input[builtins.int] last_updated: Timestamp of when the automated archival setting was last updated
63
+ :param pulumi.Input[builtins.str] last_updated_by: ID of user who last updated the automated archival setting
64
+ """
65
+ pulumi.set(__self__, "name", name)
66
+ if created is not None:
67
+ pulumi.set(__self__, "created", created)
68
+ if creator is not None:
69
+ pulumi.set(__self__, "creator", creator)
70
+ if last_updated is not None:
71
+ pulumi.set(__self__, "last_updated", last_updated)
72
+ if last_updated_by is not None:
73
+ pulumi.set(__self__, "last_updated_by", last_updated_by)
74
+
75
+ @property
76
+ @pulumi.getter
77
+ def name(self) -> pulumi.Input[builtins.str]:
78
+ """
79
+ Name of the metric to be exempted from automated archival
80
+ """
81
+ return pulumi.get(self, "name")
82
+
83
+ @name.setter
84
+ def name(self, value: pulumi.Input[builtins.str]):
85
+ pulumi.set(self, "name", value)
86
+
87
+ @property
88
+ @pulumi.getter
89
+ def created(self) -> Optional[pulumi.Input[builtins.int]]:
90
+ """
91
+ Timestamp of when the automated archival setting was created
92
+ """
93
+ return pulumi.get(self, "created")
94
+
95
+ @created.setter
96
+ def created(self, value: Optional[pulumi.Input[builtins.int]]):
97
+ pulumi.set(self, "created", value)
98
+
99
+ @property
100
+ @pulumi.getter
101
+ def creator(self) -> Optional[pulumi.Input[builtins.str]]:
102
+ """
103
+ ID of the creator of the automated archival setting
104
+ """
105
+ return pulumi.get(self, "creator")
106
+
107
+ @creator.setter
108
+ def creator(self, value: Optional[pulumi.Input[builtins.str]]):
109
+ pulumi.set(self, "creator", value)
110
+
111
+ @property
112
+ @pulumi.getter(name="lastUpdated")
113
+ def last_updated(self) -> Optional[pulumi.Input[builtins.int]]:
114
+ """
115
+ Timestamp of when the automated archival setting was last updated
116
+ """
117
+ return pulumi.get(self, "last_updated")
118
+
119
+ @last_updated.setter
120
+ def last_updated(self, value: Optional[pulumi.Input[builtins.int]]):
121
+ pulumi.set(self, "last_updated", value)
122
+
123
+ @property
124
+ @pulumi.getter(name="lastUpdatedBy")
125
+ def last_updated_by(self) -> Optional[pulumi.Input[builtins.str]]:
126
+ """
127
+ ID of user who last updated the automated archival setting
128
+ """
129
+ return pulumi.get(self, "last_updated_by")
130
+
131
+ @last_updated_by.setter
132
+ def last_updated_by(self, value: Optional[pulumi.Input[builtins.str]]):
133
+ pulumi.set(self, "last_updated_by", value)
134
+
135
+
@@ -0,0 +1,153 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from .. import _utilities
17
+ from . import outputs
18
+ from ._inputs import *
19
+
20
+ __all__ = ['ExemptMetricArgs', 'ExemptMetric']
21
+
22
+ @pulumi.input_type
23
+ class ExemptMetricArgs:
24
+ def __init__(__self__, *,
25
+ exempt_metrics: pulumi.Input[Sequence[pulumi.Input['ExemptMetricExemptMetricArgs']]]):
26
+ """
27
+ The set of arguments for constructing a ExemptMetric resource.
28
+ :param pulumi.Input[Sequence[pulumi.Input['ExemptMetricExemptMetricArgs']]] exempt_metrics: List of metrics to be exempted from automated archival
29
+ """
30
+ pulumi.set(__self__, "exempt_metrics", exempt_metrics)
31
+
32
+ @property
33
+ @pulumi.getter(name="exemptMetrics")
34
+ def exempt_metrics(self) -> pulumi.Input[Sequence[pulumi.Input['ExemptMetricExemptMetricArgs']]]:
35
+ """
36
+ List of metrics to be exempted from automated archival
37
+ """
38
+ return pulumi.get(self, "exempt_metrics")
39
+
40
+ @exempt_metrics.setter
41
+ def exempt_metrics(self, value: pulumi.Input[Sequence[pulumi.Input['ExemptMetricExemptMetricArgs']]]):
42
+ pulumi.set(self, "exempt_metrics", value)
43
+
44
+
45
+ @pulumi.input_type
46
+ class _ExemptMetricState:
47
+ def __init__(__self__, *,
48
+ exempt_metrics: Optional[pulumi.Input[Sequence[pulumi.Input['ExemptMetricExemptMetricArgs']]]] = None):
49
+ """
50
+ Input properties used for looking up and filtering ExemptMetric resources.
51
+ :param pulumi.Input[Sequence[pulumi.Input['ExemptMetricExemptMetricArgs']]] exempt_metrics: List of metrics to be exempted from automated archival
52
+ """
53
+ if exempt_metrics is not None:
54
+ pulumi.set(__self__, "exempt_metrics", exempt_metrics)
55
+
56
+ @property
57
+ @pulumi.getter(name="exemptMetrics")
58
+ def exempt_metrics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ExemptMetricExemptMetricArgs']]]]:
59
+ """
60
+ List of metrics to be exempted from automated archival
61
+ """
62
+ return pulumi.get(self, "exempt_metrics")
63
+
64
+ @exempt_metrics.setter
65
+ def exempt_metrics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ExemptMetricExemptMetricArgs']]]]):
66
+ pulumi.set(self, "exempt_metrics", value)
67
+
68
+
69
+ @pulumi.type_token("signalfx:automatedarchival/exemptMetric:ExemptMetric")
70
+ class ExemptMetric(pulumi.CustomResource):
71
+ @overload
72
+ def __init__(__self__,
73
+ resource_name: str,
74
+ opts: Optional[pulumi.ResourceOptions] = None,
75
+ exempt_metrics: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExemptMetricExemptMetricArgs', 'ExemptMetricExemptMetricArgsDict']]]]] = None,
76
+ __props__=None):
77
+ """
78
+ Create a ExemptMetric resource with the given unique name, props, and options.
79
+ :param str resource_name: The name of the resource.
80
+ :param pulumi.ResourceOptions opts: Options for the resource.
81
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ExemptMetricExemptMetricArgs', 'ExemptMetricExemptMetricArgsDict']]]] exempt_metrics: List of metrics to be exempted from automated archival
82
+ """
83
+ ...
84
+ @overload
85
+ def __init__(__self__,
86
+ resource_name: str,
87
+ args: ExemptMetricArgs,
88
+ opts: Optional[pulumi.ResourceOptions] = None):
89
+ """
90
+ Create a ExemptMetric resource with the given unique name, props, and options.
91
+ :param str resource_name: The name of the resource.
92
+ :param ExemptMetricArgs args: The arguments to use to populate this resource's properties.
93
+ :param pulumi.ResourceOptions opts: Options for the resource.
94
+ """
95
+ ...
96
+ def __init__(__self__, resource_name: str, *args, **kwargs):
97
+ resource_args, opts = _utilities.get_resource_args_opts(ExemptMetricArgs, pulumi.ResourceOptions, *args, **kwargs)
98
+ if resource_args is not None:
99
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
100
+ else:
101
+ __self__._internal_init(resource_name, *args, **kwargs)
102
+
103
+ def _internal_init(__self__,
104
+ resource_name: str,
105
+ opts: Optional[pulumi.ResourceOptions] = None,
106
+ exempt_metrics: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExemptMetricExemptMetricArgs', 'ExemptMetricExemptMetricArgsDict']]]]] = None,
107
+ __props__=None):
108
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
109
+ if not isinstance(opts, pulumi.ResourceOptions):
110
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
111
+ if opts.id is None:
112
+ if __props__ is not None:
113
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
114
+ __props__ = ExemptMetricArgs.__new__(ExemptMetricArgs)
115
+
116
+ if exempt_metrics is None and not opts.urn:
117
+ raise TypeError("Missing required property 'exempt_metrics'")
118
+ __props__.__dict__["exempt_metrics"] = exempt_metrics
119
+ super(ExemptMetric, __self__).__init__(
120
+ 'signalfx:automatedarchival/exemptMetric:ExemptMetric',
121
+ resource_name,
122
+ __props__,
123
+ opts)
124
+
125
+ @staticmethod
126
+ def get(resource_name: str,
127
+ id: pulumi.Input[str],
128
+ opts: Optional[pulumi.ResourceOptions] = None,
129
+ exempt_metrics: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExemptMetricExemptMetricArgs', 'ExemptMetricExemptMetricArgsDict']]]]] = None) -> 'ExemptMetric':
130
+ """
131
+ Get an existing ExemptMetric resource's state with the given name, id, and optional extra
132
+ properties used to qualify the lookup.
133
+
134
+ :param str resource_name: The unique name of the resulting resource.
135
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
136
+ :param pulumi.ResourceOptions opts: Options for the resource.
137
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ExemptMetricExemptMetricArgs', 'ExemptMetricExemptMetricArgsDict']]]] exempt_metrics: List of metrics to be exempted from automated archival
138
+ """
139
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
140
+
141
+ __props__ = _ExemptMetricState.__new__(_ExemptMetricState)
142
+
143
+ __props__.__dict__["exempt_metrics"] = exempt_metrics
144
+ return ExemptMetric(resource_name, opts=opts, __props__=__props__)
145
+
146
+ @property
147
+ @pulumi.getter(name="exemptMetrics")
148
+ def exempt_metrics(self) -> pulumi.Output[Sequence['outputs.ExemptMetricExemptMetric']]:
149
+ """
150
+ List of metrics to be exempted from automated archival
151
+ """
152
+ return pulumi.get(self, "exempt_metrics")
153
+
@@ -0,0 +1,106 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from .. import _utilities
17
+
18
+ __all__ = [
19
+ 'ExemptMetricExemptMetric',
20
+ ]
21
+
22
+ @pulumi.output_type
23
+ class ExemptMetricExemptMetric(dict):
24
+ @staticmethod
25
+ def __key_warning(key: str):
26
+ suggest = None
27
+ if key == "lastUpdated":
28
+ suggest = "last_updated"
29
+ elif key == "lastUpdatedBy":
30
+ suggest = "last_updated_by"
31
+
32
+ if suggest:
33
+ pulumi.log.warn(f"Key '{key}' not found in ExemptMetricExemptMetric. Access the value via the '{suggest}' property getter instead.")
34
+
35
+ def __getitem__(self, key: str) -> Any:
36
+ ExemptMetricExemptMetric.__key_warning(key)
37
+ return super().__getitem__(key)
38
+
39
+ def get(self, key: str, default = None) -> Any:
40
+ ExemptMetricExemptMetric.__key_warning(key)
41
+ return super().get(key, default)
42
+
43
+ def __init__(__self__, *,
44
+ name: builtins.str,
45
+ created: Optional[builtins.int] = None,
46
+ creator: Optional[builtins.str] = None,
47
+ last_updated: Optional[builtins.int] = None,
48
+ last_updated_by: Optional[builtins.str] = None):
49
+ """
50
+ :param builtins.str name: Name of the metric to be exempted from automated archival
51
+ :param builtins.int created: Timestamp of when the automated archival setting was created
52
+ :param builtins.str creator: ID of the creator of the automated archival setting
53
+ :param builtins.int last_updated: Timestamp of when the automated archival setting was last updated
54
+ :param builtins.str last_updated_by: ID of user who last updated the automated archival setting
55
+ """
56
+ pulumi.set(__self__, "name", name)
57
+ if created is not None:
58
+ pulumi.set(__self__, "created", created)
59
+ if creator is not None:
60
+ pulumi.set(__self__, "creator", creator)
61
+ if last_updated is not None:
62
+ pulumi.set(__self__, "last_updated", last_updated)
63
+ if last_updated_by is not None:
64
+ pulumi.set(__self__, "last_updated_by", last_updated_by)
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def name(self) -> builtins.str:
69
+ """
70
+ Name of the metric to be exempted from automated archival
71
+ """
72
+ return pulumi.get(self, "name")
73
+
74
+ @property
75
+ @pulumi.getter
76
+ def created(self) -> Optional[builtins.int]:
77
+ """
78
+ Timestamp of when the automated archival setting was created
79
+ """
80
+ return pulumi.get(self, "created")
81
+
82
+ @property
83
+ @pulumi.getter
84
+ def creator(self) -> Optional[builtins.str]:
85
+ """
86
+ ID of the creator of the automated archival setting
87
+ """
88
+ return pulumi.get(self, "creator")
89
+
90
+ @property
91
+ @pulumi.getter(name="lastUpdated")
92
+ def last_updated(self) -> Optional[builtins.int]:
93
+ """
94
+ Timestamp of when the automated archival setting was last updated
95
+ """
96
+ return pulumi.get(self, "last_updated")
97
+
98
+ @property
99
+ @pulumi.getter(name="lastUpdatedBy")
100
+ def last_updated_by(self) -> Optional[builtins.str]:
101
+ """
102
+ ID of user who last updated the automated archival setting
103
+ """
104
+ return pulumi.get(self, "last_updated_by")
105
+
106
+