private void matchEntireTupleTypes(@NotNull PsiElement rightExpression, PyTupleType rightExpressionType) {
        final List<PyType> expectedElementTypes = ContainerUtil.map(myFormatSpec.values(), name -> {
          if (name == null) {
            return null;
          }
          final PyBuiltinCache builtinCache = PyBuiltinCache.getInstance(rightExpression);
          final PyType expected = PyTypeParser.getTypeByName(rightExpression, name, myTypeEvalContext);
          if (expected == builtinCache.getStrType()) {
            return null;
          }
          return expected;
        });
        final PyTupleType expectedTupleType = PyTupleType.create(rightExpression, expectedElementTypes);
        checkTypeCompatible(rightExpression, rightExpressionType, expectedTupleType);
      }
private void matchEntireTupleTypes(@NotNull PsiElement rightExpression, PyTupleType rightExpressionType)