private boolean hasWriteOrCreateMutability(Context context, MemberShape member) {
        CfnResource cfnResource = context.getCfnResource();
        String memberId = member.getId().toShapeId().getMember().get();
        Optional<CfnResourceProperty> cfnResourceProperty = cfnResource.getProperty(memberId);
        return cfnResourceProperty.map(CfnResourceProperty::getMutabilities)
                .map(mutabilities -> mutabilities.contains(CfnResourceIndex.Mutability.WRITE)
                        || mutabilities.contains(CfnResourceIndex.Mutability.CREATE))
                .orElse(false);
    }
Generates the resource's required properties list based on the
required operation members that are part of the derived resource.

@see <a href="https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html">required Docs</a>
smithy-aws-cloudformation/src/main/java/software/amazon/smithy/aws/cloudformation/schema/fromsmithy/mappers/RequiredMapper.java