Perhaps using $0 might be better then as it is unique and automatically assigned.
But $0 itself is deterministic--the first instance is 1003, the second is 1004, etc.
Yes, but it will provide a different seed to [random] inside every abstraction. Forgive me if I understand your intentions in the wrong way-