Write SQL query to solve given problem: Among the customers having at least one shipment in 2017, how many of them have an annual revenue of over 30000000?. Keep the solution inside sql tag ```sql [SQL-Query] ```
SELECT COUNT(COUNTCUSID) FROM ( SELECT COUNT(T1.cust_id) AS COUNTCUSID FROM customer AS T1 INNER JOIN shipment AS T2 ON T1.cust_id = T2.cust_id WHERE STRFTIME('%Y', T2.ship_date) = '2017' AND T1.annual_revenue > 30000000 GROUP BY T1.cust_id HAVING COUNT(T2.ship_id) >= 1 ) T3