```rust
extern crate napirsderive;
use napi_rs::{Result, Value, CallContext, Number}; use std::convert::TryInto;
fn fibonacci(ctx: CallContext) -> Result
fn fibonaccinative(n: i64) -> i64 { match n { 1 | 2 => 1, _ => fibonaccinative(n - 1) + fibonacci_native(n - 2) } } ```