prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  CKV_AZURE_144 passes on defaults
  **Describe the issue**
  If it is related to an existing check, please note the relevant check ID.
  Also, explain the logic for this addition / change.
  
  The check CKV_AZURE_144 passes if the property "public_network_access_enabled" is not explicitly set since it assumes that it defaults to false. This seems to not be the case at least for AzureRM < 3.0.0. Right now we have publicly accessible Workspaces for which the check passes since the property is not set.
  
  **Examples**
  Please share an example code sample (in the IaC of your choice) + the expected outcomes.
  
  The Module Code:
  
  <img width="567" alt="image" src="https://user-images.githubusercontent.com/34415231/203775024-77d6bc7c-dbec-4e8c-8639-42aa67136a3d.png">
  
  The actual Workspace:
  <img width="1182" alt="image" src="https://user-images.githubusercontent.com/34415231/203775161-91611475-5a27-4435-81a8-a40c7430061d.png">
  
  Since the defaults seem to be subject to change the check should probably fail if the property is not set.
  
  
  </issue>
  <code>
  [start of checkov/terraform/checks/resource/azure/MLPublicAccess.py]
  1 from __future__ import annotations
  2 
  3 from typing import Any
  4 
  5 from checkov.common.models.enums import CheckCategories
  6 from checkov.terraform.checks.resource.base_resource_negative_value_check import BaseResourceNegativeValueCheck
  7 
  8 
  9 class MLPublicAccess(BaseResourceNegativeValueCheck):
  10     def __init__(self) -> None:
  11         # This is the full description of your check
  12         description = "Ensure that Public Access is disabled for Machine Learning Workspace"
  13 
  14         # This is the Unique ID for your check
  15         id = "CKV_AZURE_144"
  16 
  17         # These are the terraform objects supported by this check (ex: aws_iam_policy_document)
  18         supported_resources = ('azurerm_machine_learning_workspace',)
  19 
  20         # Valid CheckCategories are defined in checkov/common/models/enums.py
  21         categories = (CheckCategories.NETWORKING,)
  22         super().__init__(name=description, id=id, categories=categories, supported_resources=supported_resources)
  23 
  24     def get_inspected_key(self) -> str:
  25         return "public_network_access_enabled"
  26 
  27     def get_forbidden_values(self) -> list[Any]:
  28         return [True]
  29 
  30 
  31 check = MLPublicAccess()
  32
  [end of checkov/terraform/checks/resource/azure/MLPublicAccess.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/checkov/terraform/checks/resource/azure/MLPublicAccess.py b/checkov/terraform/checks/resource/azure/MLPublicAccess.py
  --- a/checkov/terraform/checks/resource/azure/MLPublicAccess.py
  +++ b/checkov/terraform/checks/resource/azure/MLPublicAccess.py
  @@ -2,7 +2,7 @@
   
   from typing import Any
   
  -from checkov.common.models.enums import CheckCategories
  +from checkov.common.models.enums import CheckCategories, CheckResult
   from checkov.terraform.checks.resource.base_resource_negative_value_check import BaseResourceNegativeValueCheck
   
   
  @@ -19,7 +19,8 @@
   
           # Valid CheckCategories are defined in checkov/common/models/enums.py
           categories = (CheckCategories.NETWORKING,)
  -        super().__init__(name=description, id=id, categories=categories, supported_resources=supported_resources)
  +        super().__init__(name=description, id=id, categories=categories,
  +                         supported_resources=supported_resources, missing_attribute_result=CheckResult.FAILED)
   
       def get_inspected_key(self) -> str:
           return "public_network_access_enabled"
  
verification_info: {"golden_diff": "diff --git a/checkov/terraform/checks/resource/azure/MLPublicAccess.py b/checkov/terraform/checks/resource/azure/MLPublicAccess.py\n--- a/checkov/terraform/checks/resource/azure/MLPublicAccess.py\n+++ b/checkov/terraform/checks/resource/azure/MLPublicAccess.py\n@@ -2,7 +2,7 @@\n \n from typing import Any\n \n-from checkov.common.models.enums import CheckCategories\n+from checkov.common.models.enums import CheckCategories, CheckResult\n from checkov.terraform.checks.resource.base_resource_negative_value_check import BaseResourceNegativeValueCheck\n \n \n@@ -19,7 +19,8 @@\n \n         # Valid CheckCategories are defined in checkov/common/models/enums.py\n         categories = (CheckCategories.NETWORKING,)\n-        super().__init__(name=description, id=id, categories=categories, supported_resources=supported_resources)\n+        super().__init__(name=description, id=id, categories=categories,\n+                         supported_resources=supported_resources, missing_attribute_result=CheckResult.FAILED)\n \n     def get_inspected_key(self) -> str:\n         return \"public_network_access_enabled\"\n", "issue": "CKV_AZURE_144 passes on defaults\n**Describe the issue**\r\nIf it is related to an existing check, please note the relevant check ID.\r\nAlso, explain the logic for this addition / change.\r\n\r\nThe check CKV_AZURE_144 passes if the property \"public_network_access_enabled\" is not explicitly set since it assumes that it defaults to false. This seems to not be the case at least for AzureRM < 3.0.0. Right now we have publicly accessible Workspaces for which the check passes since the property is not set.\r\n\r\n**Examples**\r\nPlease share an example code sample (in the IaC of your choice) + the expected outcomes.\r\n\r\nThe Module Code:\r\n\r\n<img width=\"567\" alt=\"image\" src=\"https://user-images.githubusercontent.com/34415231/203775024-77d6bc7c-dbec-4e8c-8639-42aa67136a3d.png\">\r\n\r\nThe actual Workspace:\r\n<img width=\"1182\" alt=\"image\" src=\"https://user-images.githubusercontent.com/34415231/203775161-91611475-5a27-4435-81a8-a40c7430061d.png\">\r\n\r\nSince the defaults seem to be subject to change the check should probably fail if the property is not set.\r\n\n", "before_files": [{"content": "from __future__ import annotations\n\nfrom typing import Any\n\nfrom checkov.common.models.enums import CheckCategories\nfrom checkov.terraform.checks.resource.base_resource_negative_value_check import BaseResourceNegativeValueCheck\n\n\nclass MLPublicAccess(BaseResourceNegativeValueCheck):\n    def __init__(self) -> None:\n        # This is the full description of your check\n        description = \"Ensure that Public Access is disabled for Machine Learning Workspace\"\n\n        # This is the Unique ID for your check\n        id = \"CKV_AZURE_144\"\n\n        # These are the terraform objects supported by this check (ex: aws_iam_policy_document)\n        supported_resources = ('azurerm_machine_learning_workspace',)\n\n        # Valid CheckCategories are defined in checkov/common/models/enums.py\n        categories = (CheckCategories.NETWORKING,)\n        super().__init__(name=description, id=id, categories=categories, supported_resources=supported_resources)\n\n    def get_inspected_key(self) -> str:\n        return \"public_network_access_enabled\"\n\n    def get_forbidden_values(self) -> list[Any]:\n        return [True]\n\n\ncheck = MLPublicAccess()\n", "path": "checkov/terraform/checks/resource/azure/MLPublicAccess.py"}]}