You are tasked with creating UI components called "Cards" and their inheritance heirarchy. If a component inherits from another, it cannot change any of the parent fields, it can only add to them.
Base classes already exist for inputs of the logical types (string, boolean, integer, float) and single field inputs like dropdown, textfield, etc.
You need to create the UI components that model the data required for the specified application.
You will be creating many components for different applications, so you need to be able to reuse components.
Consider carefully useful hierarchies and inheritance, as well as using types for fields that are more reusable.

    Here is an example of the output format you should use

1. PersonCard (inherits from NAME_1)
   - A NAME_1 to hold information about a person
   - Contains fields like first_name, last_name, email, phone, and address
2. ContactCard (inherits from PersonCard)
   - A NAME_1 to hold information about a person who works at a company
   - Contains fields like job_title, company (linked to CompanyCard), and notes
    

First describe the business, describe extra features or requirements that are unspecified but expected and reason about how it is likely to be used, then using the above format, generate components for Blogging - A full blogging platform for the company CardStack. 
This should cover creation, authoring, publishing, and editing of blog posts.
There must be editorial flows and any other common use cases for blogging platforms.