<https://stackoverflow.com/questions/26990706/cant-extract-value-from-expression-of-type-parameter>
https://stackoverflow.com/questions/26990706/cant-extract-value-from-expression-of-type-parameter