register before usage