basic framework of sif