address 0x42 { module M { struct R {} struct S {} struct Cup { f1: T } public fun eat(r: R) { R{} = r } } } script { use 0x42::M::{S, R, Cup}; // script functions no longer have any built in checks outside of visibility rules fun main( _s: &signer, _a0: T, _a1: vector, _a2: vector>, _a3: S, _a4: R, _a5: Cup, _a6: Cup, _a7: vector, ) { abort 0 } }