added functino pointor array