{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.ComprehendMedical.Types.EntitySubType
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.ComprehendMedical.Types.EntitySubType
  ( EntitySubType
      ( ..,
        EntitySubType_ACUITY,
        EntitySubType_ADDRESS,
        EntitySubType_AGE,
        EntitySubType_ALCOHOL_CONSUMPTION,
        EntitySubType_ALLERGIES,
        EntitySubType_AMOUNT,
        EntitySubType_BRAND_NAME,
        EntitySubType_CONTACT_POINT,
        EntitySubType_DATE,
        EntitySubType_DIRECTION,
        EntitySubType_DOSAGE,
        EntitySubType_DURATION,
        EntitySubType_DX_NAME,
        EntitySubType_EMAIL,
        EntitySubType_FORM,
        EntitySubType_FREQUENCY,
        EntitySubType_GENDER,
        EntitySubType_GENERIC_NAME,
        EntitySubType_ID,
        EntitySubType_IDENTIFIER,
        EntitySubType_NAME,
        EntitySubType_PHONE_OR_FAX,
        EntitySubType_PROCEDURE_NAME,
        EntitySubType_PROFESSION,
        EntitySubType_QUALITY,
        EntitySubType_QUANTITY,
        EntitySubType_RACE_ETHNICITY,
        EntitySubType_RATE,
        EntitySubType_REC_DRUG_USE,
        EntitySubType_ROUTE_OR_MODE,
        EntitySubType_STRENGTH,
        EntitySubType_SYSTEM_ORGAN_SITE,
        EntitySubType_TEST_NAME,
        EntitySubType_TEST_UNIT,
        EntitySubType_TEST_UNITS,
        EntitySubType_TEST_VALUE,
        EntitySubType_TIME_EXPRESSION,
        EntitySubType_TIME_TO_DX_NAME,
        EntitySubType_TIME_TO_MEDICATION_NAME,
        EntitySubType_TIME_TO_PROCEDURE_NAME,
        EntitySubType_TIME_TO_TEST_NAME,
        EntitySubType_TIME_TO_TREATMENT_NAME,
        EntitySubType_TOBACCO_USE,
        EntitySubType_TREATMENT_NAME,
        EntitySubType_URL
      ),
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude

newtype EntitySubType = EntitySubType'
  { EntitySubType -> Text
fromEntitySubType ::
      Data.Text
  }
  deriving stock
    ( Int -> EntitySubType -> ShowS
[EntitySubType] -> ShowS
EntitySubType -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EntitySubType] -> ShowS
$cshowList :: [EntitySubType] -> ShowS
show :: EntitySubType -> String
$cshow :: EntitySubType -> String
showsPrec :: Int -> EntitySubType -> ShowS
$cshowsPrec :: Int -> EntitySubType -> ShowS
Prelude.Show,
      ReadPrec [EntitySubType]
ReadPrec EntitySubType
Int -> ReadS EntitySubType
ReadS [EntitySubType]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [EntitySubType]
$creadListPrec :: ReadPrec [EntitySubType]
readPrec :: ReadPrec EntitySubType
$creadPrec :: ReadPrec EntitySubType
readList :: ReadS [EntitySubType]
$creadList :: ReadS [EntitySubType]
readsPrec :: Int -> ReadS EntitySubType
$creadsPrec :: Int -> ReadS EntitySubType
Prelude.Read,
      EntitySubType -> EntitySubType -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EntitySubType -> EntitySubType -> Bool
$c/= :: EntitySubType -> EntitySubType -> Bool
== :: EntitySubType -> EntitySubType -> Bool
$c== :: EntitySubType -> EntitySubType -> Bool
Prelude.Eq,
      Eq EntitySubType
EntitySubType -> EntitySubType -> Bool
EntitySubType -> EntitySubType -> Ordering
EntitySubType -> EntitySubType -> EntitySubType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: EntitySubType -> EntitySubType -> EntitySubType
$cmin :: EntitySubType -> EntitySubType -> EntitySubType
max :: EntitySubType -> EntitySubType -> EntitySubType
$cmax :: EntitySubType -> EntitySubType -> EntitySubType
>= :: EntitySubType -> EntitySubType -> Bool
$c>= :: EntitySubType -> EntitySubType -> Bool
> :: EntitySubType -> EntitySubType -> Bool
$c> :: EntitySubType -> EntitySubType -> Bool
<= :: EntitySubType -> EntitySubType -> Bool
$c<= :: EntitySubType -> EntitySubType -> Bool
< :: EntitySubType -> EntitySubType -> Bool
$c< :: EntitySubType -> EntitySubType -> Bool
compare :: EntitySubType -> EntitySubType -> Ordering
$ccompare :: EntitySubType -> EntitySubType -> Ordering
Prelude.Ord,
      forall x. Rep EntitySubType x -> EntitySubType
forall x. EntitySubType -> Rep EntitySubType x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EntitySubType x -> EntitySubType
$cfrom :: forall x. EntitySubType -> Rep EntitySubType x
Prelude.Generic
    )
  deriving newtype
    ( Eq EntitySubType
Int -> EntitySubType -> Int
EntitySubType -> Int
forall a. Eq a -> (Int -> a -> Int) -> (a -> Int) -> Hashable a
hash :: EntitySubType -> Int
$chash :: EntitySubType -> Int
hashWithSalt :: Int -> EntitySubType -> Int
$chashWithSalt :: Int -> EntitySubType -> Int
Prelude.Hashable,
      EntitySubType -> ()
forall a. (a -> ()) -> NFData a
rnf :: EntitySubType -> ()
$crnf :: EntitySubType -> ()
Prelude.NFData,
      Text -> Either String EntitySubType
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String EntitySubType
$cfromText :: Text -> Either String EntitySubType
Data.FromText,
      EntitySubType -> Text
forall a. (a -> Text) -> ToText a
toText :: EntitySubType -> Text
$ctoText :: EntitySubType -> Text
Data.ToText,
      EntitySubType -> ByteString
forall a. (a -> ByteString) -> ToByteString a
toBS :: EntitySubType -> ByteString
$ctoBS :: EntitySubType -> ByteString
Data.ToByteString,
      EntitySubType -> ByteStringBuilder
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: EntitySubType -> ByteStringBuilder
$cbuild :: EntitySubType -> ByteStringBuilder
Data.ToLog,
      HeaderName -> EntitySubType -> [Header]
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> EntitySubType -> [Header]
$ctoHeader :: HeaderName -> EntitySubType -> [Header]
Data.ToHeader,
      EntitySubType -> QueryString
forall a. (a -> QueryString) -> ToQuery a
toQuery :: EntitySubType -> QueryString
$ctoQuery :: EntitySubType -> QueryString
Data.ToQuery,
      Value -> Parser [EntitySubType]
Value -> Parser EntitySubType
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EntitySubType]
$cparseJSONList :: Value -> Parser [EntitySubType]
parseJSON :: Value -> Parser EntitySubType
$cparseJSON :: Value -> Parser EntitySubType
Data.FromJSON,
      FromJSONKeyFunction [EntitySubType]
FromJSONKeyFunction EntitySubType
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [EntitySubType]
$cfromJSONKeyList :: FromJSONKeyFunction [EntitySubType]
fromJSONKey :: FromJSONKeyFunction EntitySubType
$cfromJSONKey :: FromJSONKeyFunction EntitySubType
Data.FromJSONKey,
      [EntitySubType] -> Encoding
[EntitySubType] -> Value
EntitySubType -> Encoding
EntitySubType -> Value
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EntitySubType] -> Encoding
$ctoEncodingList :: [EntitySubType] -> Encoding
toJSONList :: [EntitySubType] -> Value
$ctoJSONList :: [EntitySubType] -> Value
toEncoding :: EntitySubType -> Encoding
$ctoEncoding :: EntitySubType -> Encoding
toJSON :: EntitySubType -> Value
$ctoJSON :: EntitySubType -> Value
Data.ToJSON,
      ToJSONKeyFunction [EntitySubType]
ToJSONKeyFunction EntitySubType
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [EntitySubType]
$ctoJSONKeyList :: ToJSONKeyFunction [EntitySubType]
toJSONKey :: ToJSONKeyFunction EntitySubType
$ctoJSONKey :: ToJSONKeyFunction EntitySubType
Data.ToJSONKey,
      [Node] -> Either String EntitySubType
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String EntitySubType
$cparseXML :: [Node] -> Either String EntitySubType
Data.FromXML,
      EntitySubType -> XML
forall a. (a -> XML) -> ToXML a
toXML :: EntitySubType -> XML
$ctoXML :: EntitySubType -> XML
Data.ToXML
    )

pattern EntitySubType_ACUITY :: EntitySubType
pattern $bEntitySubType_ACUITY :: EntitySubType
$mEntitySubType_ACUITY :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_ACUITY = EntitySubType' "ACUITY"

pattern EntitySubType_ADDRESS :: EntitySubType
pattern $bEntitySubType_ADDRESS :: EntitySubType
$mEntitySubType_ADDRESS :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_ADDRESS = EntitySubType' "ADDRESS"

pattern EntitySubType_AGE :: EntitySubType
pattern $bEntitySubType_AGE :: EntitySubType
$mEntitySubType_AGE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_AGE = EntitySubType' "AGE"

pattern EntitySubType_ALCOHOL_CONSUMPTION :: EntitySubType
pattern $bEntitySubType_ALCOHOL_CONSUMPTION :: EntitySubType
$mEntitySubType_ALCOHOL_CONSUMPTION :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_ALCOHOL_CONSUMPTION = EntitySubType' "ALCOHOL_CONSUMPTION"

pattern EntitySubType_ALLERGIES :: EntitySubType
pattern $bEntitySubType_ALLERGIES :: EntitySubType
$mEntitySubType_ALLERGIES :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_ALLERGIES = EntitySubType' "ALLERGIES"

pattern EntitySubType_AMOUNT :: EntitySubType
pattern $bEntitySubType_AMOUNT :: EntitySubType
$mEntitySubType_AMOUNT :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_AMOUNT = EntitySubType' "AMOUNT"

pattern EntitySubType_BRAND_NAME :: EntitySubType
pattern $bEntitySubType_BRAND_NAME :: EntitySubType
$mEntitySubType_BRAND_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_BRAND_NAME = EntitySubType' "BRAND_NAME"

pattern EntitySubType_CONTACT_POINT :: EntitySubType
pattern $bEntitySubType_CONTACT_POINT :: EntitySubType
$mEntitySubType_CONTACT_POINT :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_CONTACT_POINT = EntitySubType' "CONTACT_POINT"

pattern EntitySubType_DATE :: EntitySubType
pattern $bEntitySubType_DATE :: EntitySubType
$mEntitySubType_DATE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_DATE = EntitySubType' "DATE"

pattern EntitySubType_DIRECTION :: EntitySubType
pattern $bEntitySubType_DIRECTION :: EntitySubType
$mEntitySubType_DIRECTION :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_DIRECTION = EntitySubType' "DIRECTION"

pattern EntitySubType_DOSAGE :: EntitySubType
pattern $bEntitySubType_DOSAGE :: EntitySubType
$mEntitySubType_DOSAGE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_DOSAGE = EntitySubType' "DOSAGE"

pattern EntitySubType_DURATION :: EntitySubType
pattern $bEntitySubType_DURATION :: EntitySubType
$mEntitySubType_DURATION :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_DURATION = EntitySubType' "DURATION"

pattern EntitySubType_DX_NAME :: EntitySubType
pattern $bEntitySubType_DX_NAME :: EntitySubType
$mEntitySubType_DX_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_DX_NAME = EntitySubType' "DX_NAME"

pattern EntitySubType_EMAIL :: EntitySubType
pattern $bEntitySubType_EMAIL :: EntitySubType
$mEntitySubType_EMAIL :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_EMAIL = EntitySubType' "EMAIL"

pattern EntitySubType_FORM :: EntitySubType
pattern $bEntitySubType_FORM :: EntitySubType
$mEntitySubType_FORM :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_FORM = EntitySubType' "FORM"

pattern EntitySubType_FREQUENCY :: EntitySubType
pattern $bEntitySubType_FREQUENCY :: EntitySubType
$mEntitySubType_FREQUENCY :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_FREQUENCY = EntitySubType' "FREQUENCY"

pattern EntitySubType_GENDER :: EntitySubType
pattern $bEntitySubType_GENDER :: EntitySubType
$mEntitySubType_GENDER :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_GENDER = EntitySubType' "GENDER"

pattern EntitySubType_GENERIC_NAME :: EntitySubType
pattern $bEntitySubType_GENERIC_NAME :: EntitySubType
$mEntitySubType_GENERIC_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_GENERIC_NAME = EntitySubType' "GENERIC_NAME"

pattern EntitySubType_ID :: EntitySubType
pattern $bEntitySubType_ID :: EntitySubType
$mEntitySubType_ID :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_ID = EntitySubType' "ID"

pattern EntitySubType_IDENTIFIER :: EntitySubType
pattern $bEntitySubType_IDENTIFIER :: EntitySubType
$mEntitySubType_IDENTIFIER :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_IDENTIFIER = EntitySubType' "IDENTIFIER"

pattern EntitySubType_NAME :: EntitySubType
pattern $bEntitySubType_NAME :: EntitySubType
$mEntitySubType_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_NAME = EntitySubType' "NAME"

pattern EntitySubType_PHONE_OR_FAX :: EntitySubType
pattern $bEntitySubType_PHONE_OR_FAX :: EntitySubType
$mEntitySubType_PHONE_OR_FAX :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_PHONE_OR_FAX = EntitySubType' "PHONE_OR_FAX"

pattern EntitySubType_PROCEDURE_NAME :: EntitySubType
pattern $bEntitySubType_PROCEDURE_NAME :: EntitySubType
$mEntitySubType_PROCEDURE_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_PROCEDURE_NAME = EntitySubType' "PROCEDURE_NAME"

pattern EntitySubType_PROFESSION :: EntitySubType
pattern $bEntitySubType_PROFESSION :: EntitySubType
$mEntitySubType_PROFESSION :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_PROFESSION = EntitySubType' "PROFESSION"

pattern EntitySubType_QUALITY :: EntitySubType
pattern $bEntitySubType_QUALITY :: EntitySubType
$mEntitySubType_QUALITY :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_QUALITY = EntitySubType' "QUALITY"

pattern EntitySubType_QUANTITY :: EntitySubType
pattern $bEntitySubType_QUANTITY :: EntitySubType
$mEntitySubType_QUANTITY :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_QUANTITY = EntitySubType' "QUANTITY"

pattern EntitySubType_RACE_ETHNICITY :: EntitySubType
pattern $bEntitySubType_RACE_ETHNICITY :: EntitySubType
$mEntitySubType_RACE_ETHNICITY :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_RACE_ETHNICITY = EntitySubType' "RACE_ETHNICITY"

pattern EntitySubType_RATE :: EntitySubType
pattern $bEntitySubType_RATE :: EntitySubType
$mEntitySubType_RATE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_RATE = EntitySubType' "RATE"

pattern EntitySubType_REC_DRUG_USE :: EntitySubType
pattern $bEntitySubType_REC_DRUG_USE :: EntitySubType
$mEntitySubType_REC_DRUG_USE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_REC_DRUG_USE = EntitySubType' "REC_DRUG_USE"

pattern EntitySubType_ROUTE_OR_MODE :: EntitySubType
pattern $bEntitySubType_ROUTE_OR_MODE :: EntitySubType
$mEntitySubType_ROUTE_OR_MODE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_ROUTE_OR_MODE = EntitySubType' "ROUTE_OR_MODE"

pattern EntitySubType_STRENGTH :: EntitySubType
pattern $bEntitySubType_STRENGTH :: EntitySubType
$mEntitySubType_STRENGTH :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_STRENGTH = EntitySubType' "STRENGTH"

pattern EntitySubType_SYSTEM_ORGAN_SITE :: EntitySubType
pattern $bEntitySubType_SYSTEM_ORGAN_SITE :: EntitySubType
$mEntitySubType_SYSTEM_ORGAN_SITE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_SYSTEM_ORGAN_SITE = EntitySubType' "SYSTEM_ORGAN_SITE"

pattern EntitySubType_TEST_NAME :: EntitySubType
pattern $bEntitySubType_TEST_NAME :: EntitySubType
$mEntitySubType_TEST_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TEST_NAME = EntitySubType' "TEST_NAME"

pattern EntitySubType_TEST_UNIT :: EntitySubType
pattern $bEntitySubType_TEST_UNIT :: EntitySubType
$mEntitySubType_TEST_UNIT :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TEST_UNIT = EntitySubType' "TEST_UNIT"

pattern EntitySubType_TEST_UNITS :: EntitySubType
pattern $bEntitySubType_TEST_UNITS :: EntitySubType
$mEntitySubType_TEST_UNITS :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TEST_UNITS = EntitySubType' "TEST_UNITS"

pattern EntitySubType_TEST_VALUE :: EntitySubType
pattern $bEntitySubType_TEST_VALUE :: EntitySubType
$mEntitySubType_TEST_VALUE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TEST_VALUE = EntitySubType' "TEST_VALUE"

pattern EntitySubType_TIME_EXPRESSION :: EntitySubType
pattern $bEntitySubType_TIME_EXPRESSION :: EntitySubType
$mEntitySubType_TIME_EXPRESSION :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TIME_EXPRESSION = EntitySubType' "TIME_EXPRESSION"

pattern EntitySubType_TIME_TO_DX_NAME :: EntitySubType
pattern $bEntitySubType_TIME_TO_DX_NAME :: EntitySubType
$mEntitySubType_TIME_TO_DX_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TIME_TO_DX_NAME = EntitySubType' "TIME_TO_DX_NAME"

pattern EntitySubType_TIME_TO_MEDICATION_NAME :: EntitySubType
pattern $bEntitySubType_TIME_TO_MEDICATION_NAME :: EntitySubType
$mEntitySubType_TIME_TO_MEDICATION_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TIME_TO_MEDICATION_NAME = EntitySubType' "TIME_TO_MEDICATION_NAME"

pattern EntitySubType_TIME_TO_PROCEDURE_NAME :: EntitySubType
pattern $bEntitySubType_TIME_TO_PROCEDURE_NAME :: EntitySubType
$mEntitySubType_TIME_TO_PROCEDURE_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TIME_TO_PROCEDURE_NAME = EntitySubType' "TIME_TO_PROCEDURE_NAME"

pattern EntitySubType_TIME_TO_TEST_NAME :: EntitySubType
pattern $bEntitySubType_TIME_TO_TEST_NAME :: EntitySubType
$mEntitySubType_TIME_TO_TEST_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TIME_TO_TEST_NAME = EntitySubType' "TIME_TO_TEST_NAME"

pattern EntitySubType_TIME_TO_TREATMENT_NAME :: EntitySubType
pattern $bEntitySubType_TIME_TO_TREATMENT_NAME :: EntitySubType
$mEntitySubType_TIME_TO_TREATMENT_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TIME_TO_TREATMENT_NAME = EntitySubType' "TIME_TO_TREATMENT_NAME"

pattern EntitySubType_TOBACCO_USE :: EntitySubType
pattern $bEntitySubType_TOBACCO_USE :: EntitySubType
$mEntitySubType_TOBACCO_USE :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TOBACCO_USE = EntitySubType' "TOBACCO_USE"

pattern EntitySubType_TREATMENT_NAME :: EntitySubType
pattern $bEntitySubType_TREATMENT_NAME :: EntitySubType
$mEntitySubType_TREATMENT_NAME :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_TREATMENT_NAME = EntitySubType' "TREATMENT_NAME"

pattern EntitySubType_URL :: EntitySubType
pattern $bEntitySubType_URL :: EntitySubType
$mEntitySubType_URL :: forall {r}. EntitySubType -> ((# #) -> r) -> ((# #) -> r) -> r
EntitySubType_URL = EntitySubType' "URL"

{-# COMPLETE
  EntitySubType_ACUITY,
  EntitySubType_ADDRESS,
  EntitySubType_AGE,
  EntitySubType_ALCOHOL_CONSUMPTION,
  EntitySubType_ALLERGIES,
  EntitySubType_AMOUNT,
  EntitySubType_BRAND_NAME,
  EntitySubType_CONTACT_POINT,
  EntitySubType_DATE,
  EntitySubType_DIRECTION,
  EntitySubType_DOSAGE,
  EntitySubType_DURATION,
  EntitySubType_DX_NAME,
  EntitySubType_EMAIL,
  EntitySubType_FORM,
  EntitySubType_FREQUENCY,
  EntitySubType_GENDER,
  EntitySubType_GENERIC_NAME,
  EntitySubType_ID,
  EntitySubType_IDENTIFIER,
  EntitySubType_NAME,
  EntitySubType_PHONE_OR_FAX,
  EntitySubType_PROCEDURE_NAME,
  EntitySubType_PROFESSION,
  EntitySubType_QUALITY,
  EntitySubType_QUANTITY,
  EntitySubType_RACE_ETHNICITY,
  EntitySubType_RATE,
  EntitySubType_REC_DRUG_USE,
  EntitySubType_ROUTE_OR_MODE,
  EntitySubType_STRENGTH,
  EntitySubType_SYSTEM_ORGAN_SITE,
  EntitySubType_TEST_NAME,
  EntitySubType_TEST_UNIT,
  EntitySubType_TEST_UNITS,
  EntitySubType_TEST_VALUE,
  EntitySubType_TIME_EXPRESSION,
  EntitySubType_TIME_TO_DX_NAME,
  EntitySubType_TIME_TO_MEDICATION_NAME,
  EntitySubType_TIME_TO_PROCEDURE_NAME,
  EntitySubType_TIME_TO_TEST_NAME,
  EntitySubType_TIME_TO_TREATMENT_NAME,
  EntitySubType_TOBACCO_USE,
  EntitySubType_TREATMENT_NAME,
  EntitySubType_URL,
  EntitySubType'
  #-}