I have a generic type that I'm using on several places.

Sometimes I have to compose components that take slightly different versions of the same generic (basically the same generic but with less props). I expect to be able to pass objects with more props to component that expect them have less props, but flow is not allowing me to do it.

So, for a very simple generic like this:

```
export type Form<T: {} = {}> = {
  data: T,
}>

```

I should be able to pass it down like this:

```

type MyData = $ReadOnly<{ cool: boolean, superCool: boolean }>

type MyOtherData = $ReadOnly<{ cool: boolean }>

type OProps = {
  form: Form<MyOtherData>,
}

const OPstuff = function(p:OProps){

  return <div>Soy yo</div>
}

type PProps = {
  form: Form<MyData>,
  stuff: string[]
}

const PPstuff = function(p:PProps){

  return <OPstuff form={p.form}></OPstuff>
}

```

But flow is complaining that the parent one has more props, which should not be a problem.

At first I thought that it may be a mutation problem, that makes sense after all, but after annotating everything as read-only I'm getting the same error:

```
export type Form<T: $ReadOnly<{}> = {}> = $ReadOnly<{
  data: $ReadOnly<T>,
}>

```

Error:

```
28:   return <OPstuff form={p.form}>Soy puto</OPstuff>
                            ^ Cannot create `OPstuff` element because property `superCool` is missing in object type [1] but exists in object type [2] in type argument `T` [3] of property `form`. [prop-missing]
References:
13:   form: Form<MyOtherData>,
                 ^ [1]
22:   form: Form<MyData>,
                 ^ [2]
4: export type Form<T: $ReadOnly<{}> = {}> = $ReadOnly<{

```

[Here is a flow repl](https://flow.org/try/#0JYWwDg9gTgLgBAJQKYEMDG8BmUIjgcilQ3wChSkAPSWOGATzCTgDFoQAeAFQC44ASZCgAmAeQB2AG3ocA3gF8AfHAC8cBcrWDUYqTNmk4cYShgo+2kROndFAGlJLyDJnACy9ACKmUqgUN0bWTg0CAhJPgAjMMlUcTs4AGcAVyYoAGEYqJi4uCdSF2YPURgACyQobzM-S0D9EKy4aPDc-MK4UQAFHDBEvwMjTHY+NihOYrKKqpR7R3JQ8UT4LqXkzEw-TGTxDGAIcQAKMB4unsSASgNDOCIYZKhxOA5hYAA3RQBlCHo4eggOAD0L3ecwKjGYnW6EF6-WuQzGI3YHA801mRlW6z4SygwHEAHMANoAXVBCyWcEhGI2ai2Oxge0Ox0hZ0u5CMt3ujw4Kzu6zg8JAKlkYAAdAKlICeWtMIpQUA)