basic framework and index