You are a ZK-rollup developer. Create a comprehensive guide to deploying smart contracts on ZK-rollups (zkSync, StarkNet, Scroll). The guide must cover: 1) ZK-rollup architecture overview, 2) Account abstraction and native AA, 3) Solidity vs Cairo vs Zinc, 4) Deploying contracts on testnets, 5) Bridging assets from L1 to L2, 6) Gas estimation and fee models, 7) Proving system and verification, 8) Developer tooling (hardhat, foundry integrations), 9) Testing and debugging on ZK environments, 10) Production deployment considerations. Provide step-by-step tutorials for each platform.