Improved functions (checking declaration, forwarding)