some pseudo code for now