temporary functionality, but function signatures in place for better implementation