WIP make proc register idempotent