#Public Declaration